替换与 arrayList 中的键匹配的字符串的多个部分

Java 新手。我的matchedStr arrayList中有一个字符串列表,它们是键。我在 finalList arrayList 中有一个 string[],它们是包含作为文本一部分的键的字符串行。当我查找 hashMap 时,finalList 需要替换为键值。forloops 似乎没有修改 String[] finaList 中的整个字符串。相反,他们修改 1 个键值对,然后在新行上修改下一个丢失最初更新的键值。


ArrayList < String > matchedStr = this.regexMatcher(id, kd);

for (String[] fL: finalList) {

 for (String match: matchedStr) {

  //System.out.println(match);

  if (kd.containsKey(match)) {

   String updatedList = fL[1].replace(match, kd.get(match));

   System.out.println(updatedList);

  }

 }

}

在执行下一个键值时,如何确保 updatedList 保留先前更新键的内存?即 1,2,3 和 4 必须从键更新为它们的值


这辆车售价1折2折


这辆车3折4折


钥匙


1 = 一百


2 = 百分之五


3 = 200


4 = 百分之二


ITMISS
浏览 118回答 1
1回答

呼如林

ArrayList < String > matchedStr = this.regexMatcher(id, kd);for (String[] fL: finalList) {&nbsp;String updatedList = fL[1];&nbsp;for (String match: matchedStr) {&nbsp; //System.out.println(match);&nbsp; if (kd.containsKey(match)) {&nbsp; &nbsp;updatedList = updatedList.replace(match, kd.get(match));&nbsp; &nbsp;System.out.println(updatedList);&nbsp; }&nbsp;}}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java