php正则表达式
我不能用捕捉妄想狂来捕捉我想要的。。。 我正在/hodsakers/marsh zwartArray/d中搜索,我想捕获marsh zwartArray,但有时最后一个/不在我搜索的内容中。 我搜索并尝试了很多东西,比如:php正则表达式,php,regex,Php,Regex,我不能用捕捉妄想狂来捕捉我想要的。。。 我正在/hodsakers/marsh zwartArray/d中搜索,我想捕获marsh zwartArray,但有时最后一个/不在我搜索的内容中。 我搜索并尝试了很多东西,比如: (marshall[\s\S]*)\/ 它可以工作,但如果最后一个反斜杠不存在,它就不能工作。 我也尝试 (marsh[\s\S]*)(\/)? 在本例中,情况正好相反,它在没有最后一个反斜杠的情况下工作,但如果有一个反斜杠,它将获得所有字符串,而不捕获任何内容=/ 所以
(marshall[\s\S]*)\/
它可以工作,但如果最后一个反斜杠不存在,它就不能工作。
我也尝试
(marsh[\s\S]*)(\/)?
在本例中,情况正好相反,它在没有最后一个反斜杠的情况下工作,但如果有一个反斜杠,它将获得所有字符串,而不捕获任何内容=/
所以我不知道如何在这两种情况下都能捕捉到=/
感谢您的帮助您可以使用
[^\/]*
否定字符类来匹配0+字符,而不是/
:
/marsh[^\/]*/
查看也许,只需
/marsh[^\/]*/
就足够了。是否要匹配所有出现的“marsh*”?例如,对于下面的情况,如果您在上面的示例/hodsakers/marsh zwartArray/whatevermarsh中进行了两次匹配非常感谢,这是否定字符,问题解决了