java 正则表达式空格无法匹配


举个例子

Boolean xx= Pattern.matches("^[a-zA-Z0-9\\s]*$", " 801 Tampines Ave 4 Singapore 520801sss1");  匹配结果是false 

 

在众多正则表达式的教程中,对于\s的解释都是匹配空格。但在java中,\s不能对他们全部进行匹配。

半角空格:“ ”.
Unicode编码为:\u0020
可以通过正则表达式中的\s进行匹配


全角空格:“ ”
Unicode编码为:\u3000
不能通过正则表达式中的\s进行匹配
不换行空格(连续空格)


Unicode编码为:\u00A0,主要用在office中。
不能通过正则表达式中的\s进行匹配

 

匹配三种空格\s 改用 [\u3000|\u0020|\u00A0]


免责声明!

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



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