我是java的新手我想要在arraylist中出现的块字符串。 例如:我的字符串=“我要去我家附近的农业科学系”然后我想要在我的代码中添加到arraylist中的农业科学部门
另一个示例,例如“你可以使用Iterator或ListIterator遍历Java ArrayList”从我的代码中,它会给问题带来问题。但我希望输出为“您可以使用Iterator或ListIterator-for-traversing-on-Java-ArrayList。”用于遍历“和”遍历Java ArrayList的ListIterator“已经在arraylist中。
我想要仅在列表中添加的块标记,例如“阿育吠陀部门”“ListIterator for traversing”。如果我的字符串是“您可以使用Iterator或ListIterator遍历Java ArrayList”,那么输出应为“您可以使用Iterator或ListIterator-for-traversing-on-Java-ArrayList”
我的代码:
String input = "You can use either Iterator or ListIterator for traversing on Java ArrayList";
ArrayList<String> alPatterns = new ArrayList<String>();
alPatterns.add("Department of ayurveda");
alPatterns.add("science");
alPatterns.add("ListIterator for traversing");
alPatterns.add("for traversing on Java ArrayList");
int NoOfRecords = alPatterns.size();
int counter = 0;
final int flags = Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE;
Iterator it = alPatterns.iterator();
while (counter++ < NoOfRecords) {
try {
String sPat = (String) it.next();
Pattern p = Pattern.compile(sPat, flags);
Matcher m = p.matcher(input);
OUTER: while (m.find()) {
String sMatchFound = m.group();
String newstring = sMatchFound.replaceAll(" ", "-");
input = input.replaceAll(sMatchFound, newstring);
continue OUTER;
}
System.out.println(input);
} catch (Exception e) {
e.printStackTrace();
}
}
}