我正在尝试捕获以下结构的网址:
/resources/state-name/city-name
鉴于存在以下类型的网址
/resources/other-words
/resources/state-name
/resources/state-name/city-name/other-words
我试图陷阱使用 include / match regex:
\/resources\/.*\/.*
排除/匹配正则表达式:
\/resources\/.*\/.*\/.*
但这只允许其他单词和州名通过。
答案 0 :(得分:1)
试试这个正则表达式\/resources\/[^\/\r\n]*(?:$|(?:\/.*\/.*$))
。我假设网址的结尾也是该行的结尾。除了/resources/state-name/city-name
要仅获取/resources/state-name/city-name
,请使用此\/resources\/[^\/\r\n]*\/[^\/\r\n]*$
。
答案 1 :(得分:0)
像这样/(\/resources\/)([\w+%-]+)\/([\w+%-]+)/g
使用此[\w-%]
,您匹配网址中的任何字母,数字, - 和%(我将%放入,因为在网址空间中替换为-
或+
或{{1 }})
此外,使用%20
,您可以使用()
至$1