2 olinaliu olinaliu 于 2015.06.03 11:10 提问

问一个正则式的问题,请会的进来看看。

源串为:234bad{123}abca34{12}abaca12
将所有的数字替换为*号,但是{}之间的数字不变。

没什么分,意思一下。先谢谢了。

6个回答

Juforg
Juforg   2015.06.04 21:56
已采纳

正则

[1-9]\s*(?!\w*})

测试地址

http://tool.oschina.net/regex#
图片说明

frank_20080215
frank_20080215   2015.06.03 12:30

[a-z,3]{123}[a-z,4]{12}[a-z,5],
就这样了

oyljerry
oyljerry   Ds   Rxr 2015.06.03 12:53

这个直接用字符串查找,替换好了。一个个字符遍历。

edouardzyc
edouardzyc   2015.06.03 14:30

感觉用正则很难实现匹配啊,还是代码里面一个一个字符去验证比较可行

LogicTeamLeader
LogicTeamLeader   2015.06.04 15:58

用正则表达式应该是不行的,因为在两个括号之间需要记录状态,还是写代码吧,简单。

datou431
datou431   Rxr 2015.06.18 15:41

[1-9]\s*(?!\w*}) 。。。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!