Javascript 如何使正则表达式仅匹配西里尔-保加利亚字母
您好,我想用空字符串替换所有来自bylgarian字母表的字母 我看到了这个链接 但这对我不起作用 这是我试过的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}格
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("") ;
其中
[А-а]+
是您的字母表 谢谢,这很有效!你知道一个函数可以得到所有的特殊字符#@+->等等吗。