我想使用replaceAll()
进行以下替换:
#one# -> <element name="one">
#two# -> <element name="two">
依此类推...
我需要什么正则表达式?
这是一个天真的尝试:
replaceAll("#[\w]#", "<element name=\"[?1]\"");
// my hope is that I can remember a value somehow (`[\w]`) and use it for the substitution ([?1])
// which is, written like this, a nonsense
答案 0 :(得分:2)
您需要使用:
str = str.replaceAll("#(\\w+)#", "<element name=\"$1\">");
\\w+
或[^#]+
才能匹配超过1个字符$1
n替换字符串