如何在正则表达式中检查波斯字符格式

本文关键字:字符 格式 检查 正则表达式 | 更新日期: 2023-09-27 18:31:26

如何将正则表达式用于所有utf8字符?例如,我想通过正则表达式检查这种格式:

[1][الهه اردونی]

我使用 ''w 来检查波斯语字符,但它确实有效:

^('[1'])('['w+'])$

我也用了这个:

^('[1'])('['u0600-'u06FF'])$

那我该怎么做呢?感谢您的任何帮助

如何在正则表达式中检查波斯字符格式

你可以这样使用:

^('[1'])('[[ا-ی's]+'])$

正则表达式怎么样

^('[1'])'[['p{L}'s]+']$

例 : http://regex101.com/r/cU1nQ8/1

  • 'p{L}匹配任何语言的任何类型的字母

你快到了。您只需要包含范围'u0600-'u06FF,以匹配字符类中的空格's的模式,如下所示。

^('[1'])('[['u0600-'u06FF's]+'])$

演示

String input = @"[1][الهه اردونی]";
Regex rgx = new Regex(@"^('[1'])('[['u0600-'u06FF's]+'])$");
foreach (Match m in rgx.Matches(input))
{
Console.WriteLine(m.Groups[1].Value);
Console.WriteLine(m.Groups[2].Value);
}

输出:

[1]
[الهه اردونی]

爱德酮

['u0600-'u06FF's]+匹配给定列表中的一个或多个字符。 -仅在字符类中充当范围运算符。