Java 使用正则表达式修剪字符串中的特定单词
我不是正则表达式专家。假设我有这个字符串:Java 使用正则表达式修剪字符串中的特定单词,java,regex,Java,Regex,我不是正则表达式专家。假设我有这个字符串: String str = "0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00,normal." 如果要删除,请使用normal并用点替换它,使字符串如下所示: String str = "0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00." 在正则表达式中我怎么做 非常感谢。您可以使用正则表达式,如,\\w+\.$,它匹配任何以结尾的字符串,一个单词,然后是等 输出
String str = "0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00,normal."
如果要删除,请使用normal
并用点替换它,使字符串如下所示:
String str = "0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00."
在正则表达式中我怎么做
非常感谢。您可以使用正则表达式,如
,\\w+\.$
,它匹配任何以结尾的字符串,
一个单词,然后是
等
输出为(按要求)
你知道正则表达式是什么吗?你为什么要用它?不是那样的。只是你特别想使用正则表达式,但你不知道什么是正则表达式,它解决了什么样的问题,什么时候使用它。这让我想知道你为什么认为你应该用一个。你可以用很多更简单的方法。您只想删除最后一个逗号后面的内容?只需调用str.substring(0,str.lastIndexOf(','))+“
。没有涉及正则表达式。此问题不需要正则表达式。无需道歉:)。你应该多读一些关于正则表达式是什么以及它们解决了什么问题的书。我想挖个洞。我不喜欢用锤子,所以我怎么用锤子挖洞呢。你看到你的前提中的缺陷了吗?答案是铲子会更好。适合这项工作的工具。也许你的问题应该是:我怎么挖一个洞?或者我应该用什么工具挖洞?非常感谢。JeremyKemmel,你能把它概括为接受任何一个词而不是接受任何一个词吗?@JeremyKemmel,但你明白发生了什么吗?这是否解决了您未指定的实际问题?因为有很多简单的方法可以严格地做你想做的事…@JeremyKemmel是的。将模式概括为一个单词(\\w+
)。为什么要删除
,然后再次添加它?
String str = "0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00,normal."
.replaceAll(",\\w+\\.$", "\\.");
System.out.println(str);
0,tcp,1.00,0.00,0.11,0.00,0.00,0.00,0.00,1.00.