接受字符串存在的所有字符,但仅限于字符的出现

时间:2013-01-30 06:03:28

标签: regex

我正在尝试使用一个正则表达式来匹配包含某个字符串但仅包含第一个字符的字符串。

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

e.g。的 https://www.foo.com/some/folder/page.cgi ?忽略=参数

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

(^.*)(?=\?)

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

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

但我可以用一个表达式来做这个吗?

1 个答案:

答案 0 :(得分:1)

试试这个:

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

<强>解释

^          # Start of string
[^?]*      # Any number of characters except ?
foo\.com   # foo.com
[^?]*      # Any number of characters except ?