Javascript 我的正则表达式如何支持多种语言,如汉语、日语、法语等
我不熟悉java脚本。我已经编写了一个正则表达式,它允许用户名或电子邮件地址作为输入,并满足以下条件 应接受6-50个字符 不允许空白或空白 不允许使用2个Javascript 我的正则表达式如何支持多种语言,如汉语、日语、法语等,javascript,regex,Javascript,Regex,我不熟悉java脚本。我已经编写了一个正则表达式,它允许用户名或电子邮件地址作为输入,并满足以下条件 应接受6-50个字符 不允许空白或空白 不允许使用2个@符号,并且可以接受超过1个(点)和(下划线)。 这是我的正则表达式 var regExpPattern = /^(?=.{6,50}$)([\w._]+@?[\w.]*)$/; 有谁能告诉我如何使我的正则表达式支持多种语言,如西班牙语、汉语、法语等。。 非常感谢。为了涵盖其他语言,您可以使用Unicode代码/范围来表示特殊字符 以日语为
@
符号,并且可以接受超过1个
(点)和
(下划线)。这是我的正则表达式
var regExpPattern = /^(?=.{6,50}$)([\w._]+@?[\w.]*)$/;
有谁能告诉我如何使我的正则表达式支持多种语言,如西班牙语、汉语、法语等。。
非常感谢。为了涵盖其他语言,您可以使用Unicode代码/范围来表示特殊字符 以日语为例(使用Perl):
if ($text =~ m/[\x{3041}-\x{3096}]/) { print $text; }
这将查找文本字符串中的所有平假名,Unicode代码范围为:[\x3041-\x3096]
所以它可以在一个字符串中找到任何一个:
ぁ あ ぃ い ぅ う ぇ え ぉ お か が き ぎ く ぐ け げ こ ご さ ざ し じ す ず せ ぜ そ ぞ た だ ち ぢ っ
つ づ て で と ど な に ぬ ね の は ば ぱ ひ び ぴ ふ ぶ ぷ へ べ ぺ ほ ぼ ぽ ま み む め も ゃ や ゅ ゆ
ょ よ ら り る れ ろ ゎ わ ゐ ゑ を ん ゔ ゕ ゖ ゙ ゚ ゛ ゜ ゝ ゞ ゟ
试穿一下,例如:
\u3041
在上述平假名集上,将发现:
ぁ
其他语言也是如此。您的正则表达式目前在法语电子邮件地址方面如何失败?不要使用正则表达式解析电子邮件
可以为您执行此操作。此外,合法的电子邮件地址可以超过50个字符。很抱歉,这个正则表达式是根据我的项目编写的requirement@RajeshPaul问题似乎是\w
只匹配第一个“拉丁”Unicode代码页的一半。像“ç”这样的东西不匹配,这真是愚蠢。