【发布时间】:2013-09-18 23:57:35
【问题描述】:
我试图找到一个正则表达式,当它前面没有另一个特定字符串时(在我的例子中,当它前面没有“http://”时)将匹配一个字符串。这是在 JavaScript 中,我在 Chrome 上运行(没关系)。
示例代码为:
var str = 'http://www.stackoverflow.com www.stackoverflow.com';
alert(str.replace(new RegExp('SOMETHING','g'),'rocks'));
我想用一个正则表达式替换 SOMETHING,意思是“匹配 www.stackoverflow.com,除非它前面有 http://”。然后警报自然会说“http://www.stackoverflow.comrocks”。
有人可以帮忙吗?感觉就像我尝试了以前答案中的所有内容,但没有任何效果。谢谢!
【问题讨论】:
-
阅读“负前瞻”。
-
技术上,整个字符串前面没有
http://;是否应该整体更换? -
未捕获的语法错误:无效的正则表达式:/(?
-
JS 正则表达式引擎不支持lookbehinds。
-
我正在寻找的只是一个正则表达式,它允许我在 JavaScript 中匹配字符串 XXX,如果它前面没有 YYY。
标签: javascript regex