
javaで以下のような文字列がある場合、特定文字列から特定文字列までを取得したいのですが、
良い方法ありませんでしょうか?
例)c=の数値部分を取得する。
String str = "a=111 b=3333 c=446363634 d=35252 e=76738989";
int strIndex = str.indexOf("c=");
String str2 = str.substring(strIndex+3,XXXX);
XXX部分をどう書いたらよいかわからず。
そもそもsubstringでは取得できない感じなのでしょうか?
実際はリストの各文字列の"C="の値取得したいため、桁数指定できません(c=の桁数は固定でないため)
c=から最初の半角スペースまでとかで取得することが可能でしょうか。
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
質問の趣旨とは異なるけど、私なら split か正規表現の
マッチでやるかな。
c= の後に d= が有るとか仮定できるなら、
いろいろできそうだけど、それでも不細工そう(^^;
カンマや空白区切りでsplitして、 = でsplit して trim が
無難そう。
No.3
- 回答日時:
String str = "a=111 b=3333 c=446363634 d=35252 e=76738989";
int strIndex = str.indexOf("c=");//==13
int strIndex2 = str.indexOf(" ",strIndex );//==24
if(strIndex !=-1 && strIndex2 !=-1) //cの後もデータがある場合
str.substring(strIndex+2,strIndex2); //15,24
else if(strIndex !=-1) //c以降にデータがない場合(~634で終わり)
str.substring(strIndex+2); //15以降全部
No.2
- 回答日時:
正規表現なら、
https://www.javadrive.jp/start/regex/index13.html
import java.util.*;
import java.util.regex.*;
public class Main {
public static void main(String[] args) throws Exception {
// Your code here!
String str = "a=111 b=3333 c=446363634 d=35252 e=76738989";
String regex ="(c=\\d+)\s";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(str);
if (m.find()){
System.out.println(m.group(1));
}
}
}
初心者レベルですが・・・
No.1
- 回答日時:
class Main {
public static void main(String[] arg) {
String str = "a=111 b=3333 c=446363634 d=35252 e=76738989";
int strIndex = str.indexOf("c=");
String str2 = str.substring(strIndex+2).split(" ")[0];
System.out.println(str2);
}
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
processingである処理をした画...
-
ArrayList でスタックを
-
Javaで日本語の出力が文字化けする
-
System.exit()の値を取得したい
-
オブジェクトの中のプロパティ...
-
「続行するには何かキーを押し...
-
ORA-01858: 数値を指定する箇所...
-
C言語のポインターに関する警告
-
Java配列でNullPointerExceptio...
-
大量のデータを読み込んで表示...
-
例外でBeanUtils.populateが、...
-
getStringの値がNULLの時の処理
-
System.err. printlnとSystem.o...
-
配列にnullを代入すると、null...
-
ページング
-
BufferedReaderでのエラー
-
この警告はどうすれば?
-
ループ処理の際、最後だけ","を...
-
JSPやサーブレットでSystem.out...
-
IF関数でEmpty値を設定する方法。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミングの問題です。大...
-
変数を動的に利用するには?
-
コンストラクタの引数の中のnew?
-
System.exit()の値を取得したい
-
インタフェイス実装と抽象クラ...
-
JSP/Servletのパラメータの受け...
-
GetterとSetterをやったのに。
-
中カッコ{}だけの記述について
-
【java】同ディレクトリ別ファ...
-
NoSuchMethodErrorが解決できま...
-
Javaでlog4jを使ってログ出力を...
-
getActualMaximum(Calendar.DAY...
-
javaのprivate finalメンバにつ...
-
コンストラクタについて
-
オーバーライド
-
継承プログラムについて
-
javaのプログラミングで作るRPG...
-
Vectorを用いた問題
-
javaのコンパイルエラーについ...
-
考えてもちっともいい案が出て...
おすすめ情報