正则表达式怎么匹配中文字符?
我在写一个表单验证,想用正则判断用户输入的是否是中文,但试了几个写法都不对。比如我用了 /[u4e00-u9fa5]/,结果输入“你好123”也能通过,明明里面有数字啊!
是不是这个正则只匹配了部分字符?我想要的是整个字符串都必须是中文才行。有没有正确的写法?
const isChinese = (str) => {
return /[u4e00-u9fa5]/.test(str);
};
console.log(isChinese('你好123')); // 返回 true,但应该返回 false
ლ梓晴
Lv1
漏了 ^ 和 $ 锚点,加上就行了:
点赞
1
2026-03-08 22:00