Tania Marinova
Tania Marinova

Reputation: 1898

how to make regular expression match only Cyrillic bulgarian letters

Hello I want to replace all the letters from bylgarian alphabet with empty string I've seen this link How to match Cyrillic characters with a regular expression but it doesn't work for me

Here is what I've tried

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

doesn't work!

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

also nothing thanks for help;

Upvotes: 10

Views: 9546

Answers (3)

Another way:

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

Where [А-я]+ is your alphabet.

Upvotes: 0

MikeM
MikeM

Reputation: 13641

Javascript doesn't support Unicode classes of the form \p{IsCyrillic}.

But, assuming the characters you want to replace are in the Unicode Cyrillic range 0400 - 04FF, you could use:

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

For example:

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

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

Upvotes: 13

jdb
jdb

Reputation: 4519

I think that JavaScript RegEx does not support this syntax.

May be this will help?

XRegExp

Upvotes: 2

Related Questions