如何删除括号内的字符串?

时间:2013-03-07 19:59:07

标签: java regex string replace

我有单词列表,我必须删除括号内的字符串列表

day[1.0,264.0]
developers[1.0,264.0]
does[1.0,264.0]
employees[1.0,264.0]
ex[1.0,264.0]
experts[1.0,264.0]
fil[1.0,264.0]
from[1.0,264.0]
gr[1.0,264.0]

我应该

day

developers

does
.
.
.
.

这种做法是否正确?

String rep=day[1.0,264.0];  
String replaced=rep.replace("[","]","1.0","2");

这种方法是否正确?

Pattern stopWords = Pattern.compile("\\b(?:i|[|]|1|2|3|...)\\b\\s*",Pattern.CASE_INSENSITIVE);    
Matcher matcher = stopWords.matcher("I would like to do a nice novel about nature AND people");    
String clean = matcher.replaceAll("");

5 个答案:

答案 0 :(得分:5)

比目前为止建议的方法稍微简单一些。

String s = "day[1.0,264.0]";
String ofInterest2 = s.substring(0, s.indexOf("["));

会给你输出

day

答案 1 :(得分:1)

使用String#replaceAll(regex, repl)

 String rep="day[1.0,264.0]";
 rep = rep.replaceAll("\\[.*]","");

正则表达式:\\[.*]因为[是正则表达式世界中的一个特殊字符(元chacrater)你必须逃避它将反斜杠将其视为文字。.*适用于任何事物b / w' [这里有什么]'

答案 2 :(得分:1)

只需替换它们

rep.replaceAll("\\[.*\\]", "");

答案 3 :(得分:1)

用“[”标记你的字符串并获得第一部分。

StringTokenizer st = new StringTokenizer(str, "[");
String part1 = st.nextToken();

答案 4 :(得分:0)

这允许括号之后的东西

     String rep="day[1.0,264.0]";
     int firstIndex = rep.indexOf('[');
     int secondIndex = rep.indexOf(']');
     String news = rep.substring(0, firstIndex) +    rep.substring(secondIndex+1,rep.length());