c#正则表达式错误

本文关键字:错误 正则表达式 | 更新日期: 2023-09-27 18:15:50

我试图找到一个正则表达式,其中输入只是阿拉伯语,空格和数字(但没有预定义的顺序)

Regex regex = new Regex("['u0600-'06ff''s0-9]*");

当输入为4时,这是例外:

parsing "[؀-

{"parsing '"[؀-'06ff''s0-9]*'" - [x-y] range in reverse order."}

c#正则表达式错误

如果下面的代码行使用verbatim-string-literal验证整个字符串只包含阿拉伯字母、空格和数字呢?

Regex regex = new Regex(@"^['u0600-'u06ff's'd]+$");

或使用常规字符串字面值:

Regex regex = new Regex("^[''u0600-''u06ff''s''d]+$");

通过删除^(字符串的开始)和$(字符串的结束),表达式将搜索1个或多个仅由阿拉伯字母、空格和数字组成的字符串,而不是验证整个字符串是否仅由阿拉伯字母、空格和数字组成(并且不是空的)。