我有 asp.net RegularExpressionValidator
ValidationExpression="^[a-zA-Z\?*.\?!\@#\%\&\~`\$\^_\,()\//]{1,30 }$" /> 它将支持除脚本标签之外的任何字母数字字符。现在它不支持除英语以外的任何其他语言。
我想修改这个正则表达式以支持阿拉伯字符。请帮我如何修改这个表达式..
提前致谢..
我有 asp.net RegularExpressionValidator
ValidationExpression="^[a-zA-Z\?*.\?!\@#\%\&\~`\$\^_\,()\//]{1,30 }$" /> 它将支持除脚本标签之外的任何字母数字字符。现在它不支持除英语以外的任何其他语言。
我想修改这个正则表达式以支持阿拉伯字符。请帮我如何修改这个表达式..
提前致谢..
您基本上需要将您的正则表达式从白名单更改为黑名单。所以你想检查你不想允许的字符。您可以通过在左括号内使用 ^ 开始您的正则表达式来实现此目的。所以
ValidationExpression="[^\?*.\?!\@#\%\&\~`\$\^_\,()\//]"
将传递不包含表达式中字符的任何字符串。
您可以在正则表达式中添加阿拉伯字符;他们匹配自己。Unicode 的一个问题是阿拉伯数字、标点符号和装饰物分散在代码块中,因此您可能必须添加您正在寻找的特定符号:
ValidationExpression="^[a-zA-Z\?*.\?!\@#\%\&\~`\$\^_\,()\//\u0621-\u063F\u066E-\u06D3]{1,30}$"