我正在尝试为JavaScript编写一个RegEx表达式,它匹配除两个特定字符串之外的任何内容。
我不想匹配的两件事是“{{”和“{:”,正是那些。
我写道:
/^(?!{{|{:).*$/
但是,将此表达式插入regex101会产生 no 匹配。我哪里错了?我花了好几个小时倾注在线资源只是为了得到这个表达,我似乎无法弄清楚它为什么不起作用。
作为参考,目标字符串为:
{: say|x|Hi{{{x}}}} :}
答案 0 :(得分:0)
匹配两个括号之间的所有内容:\{(.*?)\}$
匹配{:and:} \{:(.*?)\:}
代码的修改版本(在一个引擎中工作而在另一个引擎中没有!):((?!{{|{:).)+
答案 1 :(得分:0)
如果正确解释问题,您可以RegExp
使用/{:|{{2}/g
var str = "{: say|x|Hi{{{x}}}} :}";
var res = str.replace(/{:|{{2}/g,"");
console.log(res);
^.*({{|{:).*$

答案 2 :(得分:0)
您可以使用
if
在JavaScript中使用否定条件({{1}})语句。