谁来帮我写一个正则表达式啊?

request 发布于 2015/09/09 13:09
阅读 377
收藏 1

【Gopher China万字分享】华为云的Go语言云原生实战经验!>>>

我需要提取模板 ${} 的 key,不会写,示例如下:

原数据:

abc${快帮帮我}ac${你真好}23${thankyou}

目标数据:

快帮帮我 你真好  thankyou

加载中
0
纠结名字
String str = "abc${快帮帮我}ac${你真好}23${thankyou}";
Pattern p = Pattern.compile("\\$\\{(.*?)\\}");
Matcher m = p.matcher(str);
while (m.find()) {
    System.out.println(m.group(1));
}



纠结名字
回复 @丨丨丨 : 嗯
丨丨丨
Pattern p = Pattern.compile("\\$\\{(.*?)\\}");
request
request
非常感谢~~~采纳了~以后得花时间学学正则了~~~
0
抱雪
抱雪
my $r = '\$\{(.*?)\}';
my $str = 'abc${快帮帮我}ac${你真好}23${thankyou}';
print $1 while($str =~ /$r/g);


perl


request
request
还有层${} 还在,我想直接提取出里面的内容 我再试试哈...谢谢~~~
0
如花花
如花花

要取{}里的  但是别的地方也有字母  建议先连{}一起先取出来然后截取 

{[\u4e00-\u9fa5A-Za-z]*}

request
request
谢谢~我想直接提取到 里面的内容,我再改改看
如花花
如花花
http://www.bejson.com/othertools/regex/ 正则验证地址
0
纠结名字
String str = "abc${快帮帮我}ac${你真好}23${thankyou}";
System.out.println(str.replaceAll(".*?\\$\\{(.*?)\\}.*?", "$1"));



request
request
谢谢,已经能替换了,我想把 每个${} 内容 分别提取出来要怎么做??现在是 整个字符串
0
Hunter丶
Hunter丶

获取${}的内容    \$\{.*?\}
然后把${}删了

request
request
谢谢给的建议~~
0
抢小孩糖吃
抢小孩糖吃

http://tool.oschina.net/regex

元数据:abc${快帮帮我}ac${你真好}23${thankyou}

正则表达式:[^$^{^}]+}

匹配结果:

共找到 3 处匹配:
快帮帮我}
你真好}
thankyou}

request
request
已解决了~谢谢
返回顶部
顶部