JAVA正则表达式替换问题, 默认替换某个字符串, 但前后有特殊字符时跳过
问题例子:把"欧元"替换为"美元",但如果是"欧元区",则跳过不替换,"的欧元"不替换350万欧元,替换后变为:350万美元欧元区国家,不替换正在贬值的欧元:不替换...
问题例子: 把"欧元"替换为"美元", 但如果是"欧元区", 则跳过不替换, "的欧元"不替换
350万欧元, 替换后变为: 350万美元
欧元区国家, 不替换
正在贬值的欧元: 不替换 展开
350万欧元, 替换后变为: 350万美元
欧元区国家, 不替换
正在贬值的欧元: 不替换 展开
5个回答
展开全部
打酱油的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-07-23
展开全部
路过!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个已经超出正则表达式可以干的事情了,建议你还是自己去循环这个字符串然后一个一个替换吧
追问
应该可以实现, 这个涉及到正则表达式的高级应用, 向前后或是向后看, 举例:
现在需要将文本中的A替换为{A}, 但是已经有一些A被替换为{A}, 所以现在文本中A和{A}是共存的, 如果只是简单的将A替换为{A}, 就会出现{A}变成{{A}}的情况, 而这是要避免的. 所以用正则表达式替换时, 需要向前看A前有没有{, 并且向后看A后有没有}, 如果都没有才替换.
我现在没时间研究, 过几天自己研究一下怎么实现吧.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询