我需要使用正则表达式匹配来自日语的多字节 0123456789 字符。
[0-9]
在这种情况下不起作用。我怎样才能制作这个正则表达式?这是我第一次尝试匹配多字节字符串。
更新
使用 UTF-8 和非 UTF-8 匹配 4 位字符串(例如出生年份)成功,使用以下regex
^([0-9]{4}||[\uFF10-\uFF19]{4})$
我需要使用正则表达式匹配来自日语的多字节 0123456789 字符。
[0-9]
在这种情况下不起作用。我怎样才能制作这个正则表达式?这是我第一次尝试匹配多字节字符串。
使用 UTF-8 和非 UTF-8 匹配 4 位字符串(例如出生年份)成功,使用以下regex
^([0-9]{4}||[\uFF10-\uFF19]{4})$
/[0-9]/
Javascript中这些多字节数字的正则表达式是
/[\uff10-\uff19]/
var str = '0123456789';
console.log(
str.match(new RegExp('[0-9]', 'g')),
str.match(/[\uff10-\uff19]/g)
);
//returns ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"] both ways
如果使用未转义的版本,请确保.js
使用正确的编码 (UTF-8) 保存文件。