Java随机数之ThreadLocalRandom学习
[TOC]
Java判断字符串中是否包含中英文标点符号 /** * 该函数判断一个字符串是否包含标点符号(中文英文标点符号)。
方法一
Java判断字符串中是否包含中英文标点符号
1 | /** |
主要是使用了正则匹配:
1 | replaceAll("\\p{P}", ""); |
replaceAll里面的正则匹配可以被使用来把字符串中的中英文标点符号全部清空只保留数字英文和中文。
Unicode 编码并不只是为某个字符简单定义了一个编码,而且还将其进行了归类。
/pP 其中的小写 p 是 property 的意思,表示 Unicode 属性,用于 Unicode 正表达式的前缀。
大写 P 表示 Unicode 字符集七个字符属性之一:标点字符。
其他六个是
- L:字母;
- M:标记符号(一般不会单独出现);
- Z:分隔符(比如空格、换行等);
- S:符号(比如数学符号、货币符号等);
- N:数字(比如阿拉伯数字、罗马数字等);
- C:其他字符
上面这七个是属性,七个属性下还有若干个子属性,用于更进一步地进行细分。
方法二:
写正则表达式:
1 | Pattern patPunc = |
如果要判断字符串最后一个字符是否为标点符号则可以在最后加上$符号:
1 | Pattern patPunc = |
1 | Pattern patPunc = Pattern.compile("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]$"); |
1 | Pattern patPunc = Pattern.compile("[`~!@#$^&*()=|{}':;',\\[\\].<>/?~!@#¥……&*()——|{}【】‘;:”“'。,、?]$"); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 麦溪·在路上!
评论
ValineDisqus