我正在Struts中进行国际化。我想为日语和英语用户编写Javascript验证。我知道英语的正则表达式,但不是日本用户。是否可以为基于Unicode验证的用户编写一个正则表达式?
请帮帮我。
答案 0 :(得分:20)
这个帖子可能很旧但只是认为我加了2美分。这是一个正则表达式,可用于匹配所有英语字母数字,日本片假名,平假名,字母数字[hankaku和zenkaku]的多字节,破折号
/[一-龠]+|[ぁ-ゔ]+|[ァ-ヴー]+|[a-zA-Z0-9]+|[a-zA-Z0-9]+[々〆〤]+/u
您可以根据需要对其进行编辑,但最后请注意“u”标志。
我希望这有帮助!
答案 1 :(得分:0)
如果您的文本编辑器和编程语言支持Unicode,您应该能够输入日文字符作为文字字符串。像[A-X]
范围这样的事情可能不会很好地转化。
您要验证哪种文字?
常规表现是什么语言? Perl兼容,POSIX还是别的什么?
答案 2 :(得分:-1)
只要您将脚本保存在与页面相同的字符集中(例如,HTML和JavaScript都是UTF-8或HTML和JavaScript都是Shift_JIS),您应该能够将正则表达式视为与你会用英语。
function isKansai(city) {
var rxKansai = /(大阪|兵庫|京都|滋賀|奈良|和歌山|osaka|hyo{1,2}go|kyoto|shiga|nara|wakayama)/i;
return rxKansai.test(city);
}
isKansai('東京'); // false
isKansai('大阪'); // true
isKansai('Tokyo'); // false
isKansai('Osaka') // true