Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.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,您好,我想用空字符串替换所有来自bylgarian字母表的字母 我看到了这个链接 但这对我不起作用 这是我试过的 1. var newstr = strInput.replace(/[\p{IsCyrillic}]/gi, ''); 不行 2. var newstr = strInput.replace(/[\p{Letter}]/gi, ''); 也没什么 谢谢你的帮助 我认为JavaScript正则表达式不支持这种语法 这会有帮助吗 Javascript不支持\p{iscyrical}格

您好,我想用空字符串替换所有来自bylgarian字母表的字母 我看到了这个链接 但这对我不起作用

这是我试过的

1. var newstr = strInput.replace(/[\p{IsCyrillic}]/gi, '');
不行

2. var newstr = strInput.replace(/[\p{Letter}]/gi, '');
也没什么
谢谢你的帮助

我认为JavaScript正则表达式不支持这种语法

这会有帮助吗


Javascript不支持
\p{iscyrical}
格式的Unicode类

但是,假设要替换的字符在Unicode范围0400-04FF内,则可以使用:

newstr = strInput.replace( /[\u0400-\u04FF]/gi, '' ); 
例如:

    var strInput = 'уфхцчшщъhelloЁЂЃЄрстыьэю',
        newstr = strInput.replace( /[\u0400-\u04FF]/gi, '' ); 

    console.log( newstr );    //  'hello'
另一种方式:

Pattern.compile("[А-я]+", Pattern.UNICODE_CHARACTER_CLASS).matcher(strInput ).replaceAll("") ;

其中
[А-а]+
是您的字母表

谢谢,这很有效!你知道一个函数可以得到所有的特殊字符#@+->等等吗。