正则表达式,但不包括

时间:2012-01-19 02:28:02

标签: regex

我已经查找了正则表达式,但未包含并找到(?:(?!x).)*,但它对我不起作用,我想知道我做错了什么。

/http:\/\/www.grasshopper3d.com\/forum\/topics\/.+(?!")/

以下网址中的斜体部分是我想要的部分,但http://regex.larsolavtorvik.com/的正则表达式测试人员告诉我这是错误的。我不明白。

HREF = “ http://www.grasshopper3d.com/forum/topics/hoopsnake-iteration-component ” _snid =“2985220:主题:24054

1 个答案:

答案 0 :(得分:0)

在这种情况下,你可以使用一个否定的字符类来获取你想要的材料:

/http:\/\/www.grasshopper3d.com\/forum\/topics\/[^"]+/

这会在topics/之后选择任何一个或非引号。

您的.+(?!")符号正在做出负面预测,但.+会吃掉任何内容,包括双引号。至少,它使正则表达式与否定的字符类相比做了额外的工作回溯。 Lookahead有它的位置 - 特别是当前瞻是一个多字符的单词或类似的时候。我不相信这是使用它的地方。