我需要获取在$ $$之间编码的字符串列表。 例如, 我在Java中有如下字符串
字符串st =尊敬的$ person_name $先生,您的当前状态为$ current_status $。
我如何使用正则表达式获取列表,例如 列表= {person_name,current_status}
答案 0 :(得分:0)
您可以使用"\\$.*?\\$"
模式来匹配以$
开头和结尾的子字符串。
然后,只需删除$
,然后添加到列表中即可。
String text = "test $test1$ test2 $test3$ test4 test5 $test6$";
List<String> strList = new ArrayList<>();
String patternString = "\\$.*?\\$";
Pattern pattern = Pattern.compile(patternString);
Matcher matcher = pattern.matcher(text);
while (matcher.find()) {
System.out.println(matcher.group(0).replace("$", ""));
strList.add(matcher.group(0).replace("$", ""));
}