皆さん、文字列のコンテンツを抽出したいのですが、この例のように、コンテンツは「&」の前と「=」の後にあります。
asdfaf=afl10109&adsfjkl
文字列から「afl10109」を抽出したいのですが、これを行う方法を教えてもらえますか?正規表現は初めてです...
入力全体を必要なものだけに置き換えるために使用replaceAll()
します。
String target = str.replaceAll(".*=(.*)&.*", "$1");
ターゲットはグループ (グループ番号 1) に取り込まれ、置換文字列で参照されます。
これはありませんregex
が、使用することもできますsplit()
String str = "asdfaf=afl10109&adsfjkl";
System.out.println(str.split("=")[1].split("&")[0]);
出力:
afl10109
古き良きものを使うString#substring()
String str = "foo=bar&baz";
int begin = str.indexOf('=');
if (begin != -1) {
int end = str.indexOf('&', begin);
if (end != -1) {
System.out.println(str.substring(begin+1, end)); // bar
}
}