我试图想出一个正则表达式,它匹配西里尔字母中的3个单词,可以在C#中包含连字符。
匹配:“АБАБА”,“А-Б”,“А-Б-ААБАБ”等。
与不匹配:“АБАБ”,“А-БАБ”,“АБАБ-”等等。
到目前为止,我只对西里尔字母有一个正则表达式:^\u0400-\u04FF+$
发布于 2016-06-01 15:14:27
首先,让我们详细说明一下规则
因此,对于我们仅有的一个词
[\u0400-\u04FF](-?[\u0400-\u04FF]+)*一些例子:
АБ // correct
АБ-А-АБ // correct (with hyphens)
Z // incorrect: non cyrillic letter
-А // incorrect: starting hyphen
А- // incorrect: dangling hyphen
А--Б // incorrect: double hyphen现在,对于单词:我们希望有三个单词被任意数量的空格\s隔开
^[\u0400-\u04FF](-?[\u0400-\u04FF]+)*(\s+[\u0400-\u04FF](-?[\u0400-\u04FF]+)*){2}$https://stackoverflow.com/questions/37571976
复制相似问题