Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如果字符串存在,则接受所有字符,但仅在字符出现之前接受_Regex - Fatal编程技术网

Regex 如果字符串存在,则接受所有字符,但仅在字符出现之前接受

Regex 如果字符串存在,则接受所有字符,但仅在字符出现之前接受,regex,Regex,我试图找到一个正则表达式,它匹配包含某个字符串的字符串,但只匹配第一次出现的字符 在本例中,我希望它匹配一个字符串,该字符串包含foo.com,但忽略第一次出现问号之前的所有内容 e、 g.?忽略=参数 我知道我可以使用以下正则表达式获取?之前的所有字符: (^.*)(?=\?) 我可以使用以下命令将找到的字符串限制为包含foo.com的字符串: ^.*(foo.com){1}.*$ 但是我可以用一个表达式来表达吗?试试这个: ^[^?]*foo\.com[^?]* 说明: ^

我试图找到一个正则表达式,它匹配包含某个字符串的字符串,但只匹配第一次出现的字符

在本例中,我希望它匹配一个字符串,该字符串包含foo.com,但忽略第一次出现问号之前的所有内容

e、 g.?忽略=参数

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

(^.*)(?=\?)
我可以使用以下命令将找到的字符串限制为包含foo.com的字符串:

^.*(foo.com){1}.*$
但是我可以用一个表达式来表达吗?

试试这个:

^[^?]*foo\.com[^?]*
说明:

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