-2

単語のリストがあり、括弧内の文字列のリストを削除する必要があります

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("");
4

5 に答える 5

5

これまでに提案された他のアプローチよりも少し単純なアプローチ。

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

出力を提供します

day
于 2013-03-07T20:05:12.663 に答える
1

String#replaceAll(regex、repl)を使用する

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

正規表現:正規表現\\[.*][世界の特殊文字(メタチャクレーター)と同様に、エスケープする必要があります。これは、リテラルとして扱うためにバックスラッシュになります。.*白黒のすべてのものです'[ここにあるもの]'

于 2013-03-07T20:01:46.687 に答える
1

それらを何も置き換えないでください

rep.replaceAll("\\[.*\\]", "");
于 2013-03-07T20:01:58.470 に答える
1

文字列を「[」でトークン化し、最初の部分を取得するだけです。

StringTokenizer st = new StringTokenizer(str, "[");
String part1 = st.nextToken();
于 2013-03-07T20:02:07.693 に答える
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());
于 2013-03-07T20:08:30.967 に答える