匹配带重音的字母
本文关键字: | 更新日期: 2023-09-27 18:31:37
我有以下正则表达式,我用它来在连接字母和数字时拆分它们:
(?<='p{L})(?='p{N})
asd123 //Match
وس123 //Match (Right to left)
وَ123 //No match (The accent is not matched)
如果字母有重音符号(变音符号),则不会匹配。我尝试添加捕获变音符号的'p{M}
,但我似乎无法使其工作。
我犯了一个非常简单的错误,不包括'p{M}
后面的"?"。如果没有"?",它将成为强制性的,而不是可选的,在我的情况下它是可选的。
(?<='p{L}'p{M}?)(?='p{N}) //For single diacritic mark
(?<='p{L}'p{M}'p{M}?)(?='p{N}) //For single double mark (in Arabic)