在正则表达式中查找++

Far*_*uzi 1 html javascript

我想找到++或 - 或//或**在字符串中登录可以有人帮助我吗?

var str = document.getElementById('screen').innerHTML;
var res = str.substring(0, str.length);
var patt1 = ++,--,//,**;
var result = str.match(patt1);  
if (result)
{
    alert("you cant do this :l");
    document.getElementById('screen').innerHTML='';
}
Run Code Online (Sandbox Code Playgroud)

Qua*_*one 6

这通过反向引用找到字符的双精度:

/([+\/*-])\1/g
Run Code Online (Sandbox Code Playgroud)

[来自q.评论]:我知道这个但是当我输入var patt1 =/[++]/i; 代码找+和++

[++]意味着任意一个字符.通常+是qantifier"1或更多",并且当它应该是文字时需要通过前导反斜杠转义,除了括号中它没有任何特殊含义.

需要在字符类中进行转义的字符包括转义字符本身(反斜杠),表达式delimimiter(斜杠),结束括号和范围运算符(短划线/减号),后者除了在字符类的末尾在我的代码示例中.

字符类[]匹配一个字符.量词,例如[abc]{2}匹配"aa","bb",但也匹配"ab".

您可以在括号中使用对匹配的反向引用:

/(abc)\1

这里\1指的是第一个括号(abc).整个表达式将匹配"abcabc".

再次澄清:我们可以在反向引用上使用量词:

/([+\/*-])\1{9}/g
Run Code Online (Sandbox Code Playgroud)

这与类中的10个相等字符匹配,子模式本身和9个后向引用更多.

/.../g 查找由于修饰符global(g)而发生的所有事件.

regextester.com上的测试用例