[英]Regex match multibyte numbers
我需要使用正则表达式匹配日语中的多字节0123456789字符。
[0-9]
在这种情况下不起作用。 我怎样才能制作这个正则表达式? 这是我第一次尝试匹配多字节字符串。
匹配4位数字符串,如出生年份,使用以下regex
使用UTF-8和非UTF-8成功
^([0-9]{4}||[\0-\9]{4})$
对于Javascript中的这些多字节数,正则表达式相当于/[0-9]/
/[\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
如果使用未转义的版本,请确保使用正确的编码(UTF-8)保存.js
文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.