Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.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
Perl Regex";不是";(消极前瞻)_Regex_Perl_Regex Lookarounds - Fatal编程技术网

Perl Regex";不是";(消极前瞻)

Perl Regex";不是";(消极前瞻),regex,perl,regex-lookarounds,Regex,Perl,Regex Lookarounds,我不太确定这种类型的正则表达式的正确措辞是什么,但基本上我要做的是匹配任何以“/”开头但后面没有“bob/”的字符串,例如 因此,这些将匹配: /tom/ /tim/ /steve 但这些都不会 tom tim /bob/ 我相信答案非常简单,但我在任何地方都很难找到“regex not”。我肯定有一个更为华丽的词来形容我想要的东西,它会带来好的结果,但我不确定它会是什么 编辑:我已更改了标题,以指示我要查找的内容的正确名称您可以使用负面前瞻(记录在下): 可能是/^\/(?!bob\/)/

我不太确定这种类型的正则表达式的正确措辞是什么,但基本上我要做的是匹配任何以“/”开头但后面没有“bob/”的字符串,例如

因此,这些将匹配:

/tom/
/tim/
/steve
但这些都不会

tom
tim
/bob/
我相信答案非常简单,但我在任何地方都很难找到“regex not”。我肯定有一个更为华丽的词来形容我想要的东西,它会带来好的结果,但我不确定它会是什么


编辑:我已更改了标题,以指示我要查找的内容的正确名称

您可以使用负面前瞻(记录在下):


可能是/^\/(?!bob\/)/,但你已经了解了要点。谢谢@GoldenNewby Woops忽略了问题的这一部分,默认正则表达式标志现在是一个特性,
^
最好写成
\a
。使用交替分隔符和
/x
,它看起来像
m |\A/(?!bob/)\x
@brian d foy,暗示存在此功能是荒谬的,这意味着
/^/
必须更改为
/\A/
/$/
/(?=\n?\z)/
/.//./.
//////.
//./.
]/
@ikegami:
$
无论如何都应该是
\z
更频繁;我并非没有理由使用并行
\a
那么
/jimbob/
呢?那/bob/apples?就我而言/jimbob/还行,但/bob/apples不行
/^\/(?!bob\/)/