这个Java程序做了什么?

时间:2012-09-22 08:56:23

标签: java regex

Matcher m = Pattern.compile("\\@[^\\@]+\\@").matcher(myMsg);
while (m.find()){
  totalPlaceHoldersList.add(m.group().toString());
}

我有这个程序。它有什么作用?有人可以用例子向我解释一下吗?

2 个答案:

答案 0 :(得分:4)

它会将myMsg变量与该正则表达式进行匹配。然后它会在列表中添加结果(如果找到与模式匹配的内容)。

答案 1 :(得分:0)

此代码处理String myMsg。查找以下分隔符之间出现的所有子字符串:'\ @',并将它们放入名为totalPlaceHoldersList的列表中。

假设你有这个myMsg:

myMsg = 'bla bla \@value1\@ bla bla \@value2\@ bla bla';

运行代码后,您将在totalPlaceHoldersList中拥有以下值:

["value1", "value2"]

请注意,由于未声明totalPlaceHoldersList,因此不会编译和运行此代码。你会声明它:

List<String> totalPlaceHoldersList = new ArrayList<String>();