2016-08-03 21 views
-6

Javaの英数字の文字列から最初の3文字を抽出するにはどうすればよいですか?例 - のために 英数字の文字列は12A12D3F34DFdHNB38HGある場合。そこで、ADFを抽出したいJavaの正規表現英数字の文字列から最初のn文字を抽出する

+2

何を?また、非強調ラテン文字はアルファベットのみではありません... – fge

+1

[String.substring()](https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#部分文字列(int、%20int)) – jonhopkins

+1

コードを投稿してください。この正規表現は正常に動作するはずです。 String'sは 'char'actersで完全に構成されて'として見て – Pshemo

答えて

0

Stringの最初の3文字を抽出するには、Stringクラスでsubstring()メソッドを使用します。

String firstThreeCharacters = str.substring(0, 3); 

これがあなたが求めているものでない場合は、おそらくあいまいであるため、質問を明確にしてください。

EDIT:@WiktorStribiżewはあなたの明確な質問に対して良い答えを持っています。私は他のユーザーのための答えをより目に見えるようにここに再投稿しています。

String firstThreeCharacters = str.replaceAll("(?i)^[^a-z]*([a-z])[^a-z]*([a-z])[^a-z]*([a-z]).*$", "$1$2$3") 
+0

実際に私は、英数字の文字列を持っています。 eg-A12D3F376HF7H23H87JHの場合。だから、私は、出力がADF –

0

あなたはのようにパターン必要があります:あなたが使用しているコードについて[a-zA-z0-9]{3}

+0

になりたいので、ノーこのパターンは、最初の3つの文字を抽出し、最初の3のアルファベットを抽出し、それが数であるか、またはそれはアルファベットになりたいです。私はアルファベットだけを抽出したい –

関連する問題