如何使正则表达式只匹配西里尔文保加利亚字母

时间:2013-02-02 07:08:17

标签: javascript regex

您好我想用空字符串替换bylgarian字母表中的所有字母 我见过这个链接 How to match Cyrillic characters with a regular expression 但它对我不起作用

这是我尝试过的

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

不起作用!

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

3 个答案:

答案 0 :(得分:13)

Javascript不支持\p{IsCyrillic}形式的Unicode类。

但是,假设您要替换的字符位于Unicode Cyrillic范围0400 - 04FF,您可以使用:

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

例如:

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

    console.log( newstr );    //  'hello'

答案 1 :(得分:2)

我认为JavaScript RegEx不支持这种语法。

可能会有帮助吗?

XRegExp

答案 2 :(得分:1)

另一种方式:

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

[А-я]+是您的字母表。