2016-07-14 3 views
0

私は各文字列に文字を含む文字列を持っています。数字は&の記号です。私は数字の前に数字の&が現れるまで文字列の内容を抽出したいと思います。ここに例があります:javaで文字が最初に出現した後の文字列の内容を削除するにはどうすればよいですか?

Axis-1.4.5 
Limo_9.5.6R 
Dent-ist-0C.4E 
Log4M-1.2.0 
Hello-World-1.0 

これらは私の文字列です。私は私の出力として、これからしたいことは次のとおりです。

Axis 
Limo 
Dent-ist 
Log4M 
Hello-World 

私はでReplaceAll( "\ dの"、 "")パターンを使用 & でReplaceAll( "[ - + ^:。、_]"、」 ")を使用して数字と記号を削除します。しかし、私はこれで私のoutpusとなったことは次のとおりです。

Axis 
LimoR 
DentistCE 
LogM 
HelloWorld 

誰かが私には、このシナリオのために適切に文字列をトリミングする方法を教えてくださいもらえますか?

+0

"Dentist"は本当に "Dent-ist"ですか? (または、 "Hello World"は本当に "HelloWorld"であるべきですか?) – smarx

+0

歯医者はDent-istでなければなりません。 – SRS

+0

基本的に、私は文字の間に現れる記号が来ることを期待しています。数字の前にある記号は、数字と連続する数字と一緒に消えます。 – SRS

答えて

2

私はと思っています。

"a 'シンボル'と数字の後に文字列の他の文字が続きます。"

+1

元の要求では、 d。* "はより良いパターンです。 – bezmax

+0

@bezmaxこれは "Log4M-1.2.0"を "Lo"にし、目的の出力を "Log4M"にします。質問の記述は「数字と先行する記号」でした。行間を読んで、私はここでの "記号"はハイフン、アンダースコアなどを意味すると思います。私は元の質問者が使った文字クラスを使いました。 – smarx

関連する問題