我在正则表达式方面不是很有经验,所以这就是我问你的原因:) 我的问题是我在验证电子邮件时使用这种模式。
/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zAZ\-0-9]+\.)+[a-zA-Z]{2,}))$/
添加到此模式以禁止阿拉伯字符是什么?
我在正则表达式方面不是很有经验,所以这就是我问你的原因:) 我的问题是我在验证电子邮件时使用这种模式。
/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zAZ\-0-9]+\.)+[a-zA-Z]{2,}))$/
添加到此模式以禁止阿拉伯字符是什么?
使用字符属性:
/\p{sc=Arabic}/
匹配所有阿拉伯字符。
然后反转表达式匹配的字符
/[^\p{sc=Arabic}]/
我打赌你可以用括号表达式(又名字符集又名字符类)和 unicode 转义(在javascript和C#中可用)来做到这一点:
[^\u####-\u%%%%]
... 其中主题标签 ( ####
) 表示第一个阿拉伯字符(即具有最低 unicode 值的字符),百分号 ( %%%%
) 表示最后一个阿拉伯字符(即具有最高 unicode 值的字符)。
维基百科告诉我有多个范围的阿拉伯字符,所以你需要重复上面的片段。