java-正则表达式\\p用法

Author Avatar
丁起男 07月 04,2022
  • 在其它设备中阅读本文章

java-正则表达式\\p用法

\\p一般用作匹配字符串中的指定类型的字符

p是property的意思,表示unicode属性,用于unicode正则表达式的前缀

语法

\\p{字符集属性}  
或简写为:
\\p字符集属性

使用

去重所有数字

"abc123啊啊啊".replaceAll("\\pN","")

获取所有标点符号

Matcher matcher = Pattern.compile("\\pP").matcher("啊啊啊123abc***");
while (matcher.find()) {
	System.out.println(matcher.group());
}

字符属性

属性 说明
P 标点字符,在jdk5及以下版本无法匹配全角符号,jdk6中由于加入了Pi和Pf两个unicode子属性,因此能匹配
L 字母(包括汉字)
M 标记符号
Z 分割符号(比如空格、换行等)
S 符号(比如数学符号、货币符号等)
N 数字(比如阿拉伯数字、罗马数字等)
C 其他字符