假設我有這樣的網址
https://example.com/linkhttps://example.com/link?code=1234https://example.com/link/with/longer/path
我需要的是相應地匹配:
linklinklink/with/longer/path
這個正則運算式:^(?:[^/]*(?:/(?:/[^/]*/?)?)?([^?] )(?:\??. )?)$ 能夠對路徑進行分組,但由于我使用的工具,我需要精確匹配那個組 - 這個正則運算式匹配整個 URL。
我可以讓它只匹配第一組嗎?或者也許有更聰明的方法來做?
uj5u.com熱心網友回復:
您可以使用
(?<=(?<!/)/)(?!/)[^?]
請參閱正則運算式演示。詳情:
(?<=(?<!/)/)/- 如果在當前位置的左側緊鄰另一個字符之前沒有緊鄰的字符,則匹配失敗的正向后/查找(檢查是否使用(?<!/)負向后查找執行)(?!/)- 如果當前位置的右側有一個/字符,則匹配失敗的負前瞻[^?]- 除字符外的一個或多個字符?。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/445149.html
標籤:正则表达式
上一篇:替換熊貓中的反引號
