关于正则表达式匹配的问题

今天接到一个优化的需求,要求输入框可以任意输,但是不能出现纯数字.

于是就去匹配正则,参考链接

https://www.cnblogs.com/diyichen/p/5960425.html

/^(?!\d+$)[\dA-Za-z\u4e00-\u9fa5]{1,20}/

本来以为实现了需求,但是,发现-1   2%  +50  0.336这类数字被检测为纯数字


bug复现

后来通过知乎/百度/谷歌才知道之前的正则存在漏洞,后面把支持的符号加进去就实现了优化需求

/(?!\d+$)[\dA-Za-z\u4e00-\u9fa5\_\,\.\%\+\-\*\(\)\&\#\[\]\]/]{1,}$/


实现功能

这里还有一个比较全面的正则表达式,来自csdn的大神

https://blog.csdn.net/zhuchangbo18/article/details/82055011

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容