我想在Android上做这样的事情:
来自:
*foo* bar*stuff*
dest:
<b>foo</b> bar<b>stuff</b>
在C#
中,我创建了一个正则表达式并替换:
string text = "*foo* bar*stuff*";
Regex bold = new Regex(@"\*(.+?)\*", RegexOptions.Singleline);
html = bold.Replace(html, new MatchEvaluator(p => string.Format("<b>{0}</b>", p.Groups[1].Value)));
我已经阅读了Android的java.util.regex.Matcher
documentation,并且它说replace()
方法用一个(常量)字符串替换整个匹配。是否有一种技巧方法可以参考该出现的组来替换每个出现的事件?
答案 0 :(得分:2)
应该是:
"<b>$1</b>"
那是C#,但它在Java中应该是相同的。同样,$0
代表整个匹配(或某些风格的$&
)
答案 1 :(得分:0)
你有没有看过MatchResult?