难以使用正则表达式模式

时间:2012-10-29 08:54:40

标签: java regex

请考虑以下文字:

 String str=
            "<div style=\"text-align:left;\">$#abc#$</div>$#pqr#$";

如何获得abc和pqr。

我尝试使用以下代码

String tempStr =
        "$#<div style=\"text-align:left;\">$#Order-CASNo#$</div>$#abc#$";

Pattern p = Pattern.compile("(?<=\\$#)(\\w*)(?=#\\$)");
Matcher m = p.matcher(tempStr);

List<String> tokens = new ArrayList<String>();
while (m.find()) {
    System.out.println("Found a " + m.group() + ".");

但它只给我abc ..我想要回答为Order-CASNo和abc。

1 个答案:

答案 0 :(得分:1)

这是正则表达式:

修改

\b(?<=\$\#)(.*?)(?=\#\$)\b

<强> Regex Demo