如何组合字符的正则表达式?

时间:2014-04-08 08:52:03

标签: c# asp.net regex unicode

我正在一个应用程序中,我需要一个正则表达式来检测组合字符。我已经制作了以下正则表达式

string regex = @"^([~.][a-z])";

我必须检测与字符分开的组合字符,因为它们不存在于字体中,因此我必须检查两个字符,一个是符号,另一个是任何字符,即a。 问题是我无法粘贴符号的确切形状。我正在使用此链接 http://en.wikipedia.org/wiki/Combining_character 当我将它们粘贴在正则表达式中时,形状会发生变化。

如何制作检测正则表达式中提供的特定组合字符的正则表达式。

1 个答案:

答案 0 :(得分:2)

使用Unicode属性:

\p{L}\p{M}*+

\p{L}来自任何语言的任何类型的信件(但不是组合的信件!)

\p{M}一个字符,旨在与另一个字符组合(例如重音符号,变音符号,封闭框等)。

请参阅regular-expressions.info/unicode for more details (chapter Unicode Categories)