Java-删除所有语言字符串中的所有非单词字符

Java-删除所有语言字符串中的所有非单词字符,java,regex,punctuation,Java,Regex,Punctuation,我需要删除java中单词的所有标点符号。我尝试过这个 System.out.println("do.,it".replaceAll("[^\\w]", "")); System.out.println("сказочники".replaceAll("[^\\w]", "")); 但它不适用于基里尔语或其他语言。我已经试着和你一起工作了 \p{Punct} 但举例来说,这份清单并不完整 „ and » 缺少请尝试使用此正则表达式 text = text.replaceAl

我需要删除java中单词的所有标点符号。我尝试过这个

    System.out.println("do.,it".replaceAll("[^\\w]", ""));
    System.out.println("сказочники".replaceAll("[^\\w]", ""));
但它不适用于基里尔语或其他语言。我已经试着和你一起工作了

\p{Punct}
但举例来说,这份清单并不完整

„ and »
缺少

请尝试使用此正则表达式

 text = text.replaceAll("[^a-zA-Z0-9\\s]", "");
这将删除除空格以外的所有特殊字符

编辑:

因为这是另一种语言

假设您必须删除
-+^.:


试试这个,
text=text.replaceAll(“[\\-\\+\\.\\^:,]”,“”)

我的解决方案似乎是

System.out.println("сказ очники»»«„“‚‘›‹".replaceAll("[^\\p{L}]", ""));

不确定java是否支持此功能,但请尝试:

"сказочники".replaceAll("\P{wd}+", "")

其中,
\p{wd}
表示任何语言中的任何非单词字符。它与
\p{wd}

System.out.println(“do.,It.replaceAll(\\w+\\p{Punct}(\\s}$),“$1$2”)相反;打印“做吧,做吧”。。。或者我不认为它对kyrillicTry二副有效。我不知道为什么,但它似乎有效,谢谢=)我会尽快接受它。我如何能包括更多的点刺,如»?只需在里面添加[?:!,;]可能的重复并不能回答这个问题。若要批评或要求作者澄清,请在其帖子下方留下评论。为什么这不是解决方案?我写了“我需要删除java中单词的所有标点符号”,你也在问一个问题。这是一个问答论坛,你不能以一个问题来结束答案。。。没有意义:-)它在我的Java1.8平台上不起作用。我成功地使用了“ззччззчзззгзгзгзззг1079。