0

我试图想出一个正则表达式来匹配包含某个字符串但最多只出现第一次出现的字符的字符串。

在这种情况下,我希望它匹配一个包含foo.com的字符串,但忽略所有内容,包括第一次出现的问号。

例如https://www.foo.com/some/folder/page.cgi ?ignore=params

我知道我可以?使用以下正则表达式获得所有字符:

(^.*)(?=\?)

我可以使用以下内容将找到的字符串限制为包含foo.com的字符串:

^.*(foo.com){1}.*$

但我可以用一种表达方式做到这一点吗?

4

1 回答 1

1

尝试这个:

^[^?]*foo\.com[^?]*

解释:

^          # Start of string
[^?]*      # Any number of characters except ?
foo\.com   # foo.com
[^?]*      # Any number of characters except ?
于 2013-01-30T07:07:04.600 回答