Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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
Javascript高级正则表达式计数_Javascript_Regex - Fatal编程技术网

Javascript高级正则表达式计数

Javascript高级正则表达式计数,javascript,regex,Javascript,Regex,我需要根据3个不同的组计算字符串中的字符数。我需要为每个变量单独计数,所以有3个变量,但我似乎无法正确地使用正则表达式,主要是因为我不确定要逃避什么 因此,类型1将是: [a-zA-Z0-9@¡¿£_!$"¥#è¤é%ù&ìYò(Ç)*:Ø+;øÆ,<æ-=ß.>É/?ÄäÖöÑñÜü§à] |^{}[]~\€ 第三类是其他两组中没有的 如何为每个变量设置正则表达式匹配 编辑:我已经设法让类型1工作,这是一个简单的,但我似乎无法让类型2计数这些字符。我试过: var ty

我需要根据3个不同的组计算字符串中的字符数。我需要为每个变量单独计数,所以有3个变量,但我似乎无法正确地使用正则表达式,主要是因为我不确定要逃避什么

因此,类型1将是:

[a-zA-Z0-9@¡¿£_!$"¥#è¤é%ù&ìYò(Ç)*:Ø+;øÆ,<æ-=ß.>É/?ÄäÖöÑñÜü§à]
|^{}[]~\€
第三类是其他两组中没有的

如何为每个变量设置正则表达式匹配

编辑:我已经设法让类型1工作,这是一个简单的,但我似乎无法让类型2计数这些字符。我试过:

var type1 = ($(this).val().match(/[a-zA-Z0-9@¡¿£_!$"¥#è¤é%ù&ìYò(Ç)*:Ø+;øÆ,<æ\-=ß.>É/?ÄäÖöÑñÜü§à/\n/\r/\s]/g)||[]).length;
var type2 = ($(this).val().match(/[|{}[/]~^\\€]/g)||[]).length;
var type3 = $(this).val().length - type1 - type2;
var type1=($(this).val().match(/[a-zA-Z0-9@$”、%249;和ìYò(ì)*:;
var type2=($(this).val().match(/[{}[/]~^\\\€]/g)| |]]).length;
var type3=$(this.val().length-type1-type2;

经过一些尝试和错误,我成功地让它工作了,显然:

var type1 = ($(this).val().match(/[a-zA-Z0-9@@¡¿£_!$"¥#è¤é%ù&ìYò(Ç)*:Ø+;øÆ,<æ\-=ß.>É/?ÄäÖöÑñÜü§à/\n/\r/\s]/g)||[]).length;
var type2 = ($(this).val().match(/[|{}[\]~^\\€]/g)||[]).length;
var type3 = $(this).val().length - type1 - type2;
var type1=($(this).val().match(/[a-zA-Z0-9@@@u!$”)、%Y(ù)*:;
var type2=($(this).val().match(/[{}[\]~^\\€]/g)\\\[])长度;
var type3=$(this.val().length-type1-type2;

Escape
-
/
在第一个中,而
]
在第二个中。另外,不要将
^
作为第二个字符中的第一个字符。