如何删除Java中单个单词后面的所有标点符号?

use*_*680 5 java string

我需要删除一个单词后的标点符号.例如,word?!应该更改为word,string:应该更改为string.

编辑:算法应该只删除字符串末尾的标点符号.字符串中的任何标点都应该保留.例如,doesn't;应该成为doesn't.

wan*_*nik 6

使用replaceAll(...)接受正则表达式的方法.

String s = "don't.  do' that! ";
s = s.replaceAll("(\\w+)\\p{Punct}(\\s|$)", "$1$2");
System.out.println(s);
Run Code Online (Sandbox Code Playgroud)


Fai*_*Dev 2

您可以使用正则表达式来修改字符串。

String resultString = subjectString.replaceAll("([a-z]+)[?:!.,;]*", "$1");
Run Code Online (Sandbox Code Playgroud)

我不知道'最后的“单词”在哪里,它被用作标点符号。所以这个正则表达式将适合你。