面临使用正则表达式替换文件中所有标点符号的问题

时间:2017-03-21 19:28:15

标签: java regex

我的任务是从文件中排除所有非字母数字值并在Java中将其转换为小写。目前,我使用以下

replaceAll("\\p{P}+","").toLowerCase();

然而,这除了“引号”之外的所有类型。有人可以告诉我如何排除这种类型的引号吗?谢谢!

2 个答案:

答案 0 :(得分:1)

尝试使用{Punct}代替{P}

答案 1 :(得分:1)

反引号(`)字符,又名Unicode Character 'GRAVE ACCENT' (U+0060),被归类为Symbol, Modifier [Sk]

Symbol Unicode Categories包括:

如果您也想要替换它们,请将正则表达式更改为:

replaceAll("[\\p{P}\\p{S}]+","") // Punctuation or Symbol