ファイルを1行ずつ読み取るコードのこの部分があります。編集しようとしているこの元の行は次のとおりです: j(ac) "test" /Aaa,Bbb/
要素 [Ccc,Ddd,Eee] を含む配列リストがあり、これらの要素を / と / の間の上記の行で置き換えたいと考えています。/ と / の間の置換は正常に機能します。ただし、arraylist を .replace 原因 [] に直接配置することはできません [] も表示されます。だから私はリストの要素を追加しようとしています。ただし、次のような望ましい結果を得ることができません: j(ac) "test" /Ccc,Ddd,Eee/
最初の要素のみを取得し続けます: j(ac) "test" /Ccc/
どうすればこれを修正できますか?
List<String> strlist = new ArrayList<String>() ;
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
if (line.contains("j(ac)")) {
String skat ;
skat = null ;
for(String s : strlist) {
for (int index = 0; index < strlist.size(); index++) {
s = strlist.get(index);
skat=s;
}
}
String next = line.replaceAll("/.*?/", "/"+skat+"/");
System.out.print(next);
}