input框限制只能输入中文


input框限制只能输入中文

利用正则表达式来让input中的值限制输入中文

img

先来看代码:

let value = '测试123';
value.replace(/[^\u4e00-\u9fa5]/g, '')

声明value值初始化
然后用 replace函数 来替换正则表达式中不属于中文的字符
但在测试时发现用''是无法替换字符,必须是一个字符如'a','1','@',' '来替换才能成功。原理暂不清楚。

let n = /[^\u4e00-\u9fa5]/g;
let testString='测试123';
let bool = n.test(testString);
console.log(bool);

这里的 test函数 用于检测一个字符串是否匹配某个模式,如果匹配则返回true,反则返回false。

这里的 ^ 匹配输入字符串的开始位置,如果在方括号表达式中使用则表示不接受该字符集合。

所以该代码表示如果字符中存在中文字符则返回false


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM