sri*_*asu 13 java regex string replace ampersand
我有一个大字符串,其中我有以下模式中可用的&字符 -
A&B
A & B
A& B
A &B
A&B
A & B
A& B
A &B
Run Code Online (Sandbox Code Playgroud)
我想替换所有出现的&字符到&
替换它时,我还需要确保我不会错误地将其转换&为&.我如何以精通业绩的方式做到这一点?我使用正则表达式吗?如果是的话,请你能帮我解决正确的正则表达式吗?
到目前为止,我一直试着追随没有乐趣:
data = data.replace(" & ", "&"); // doesn't replace all &
data = data.replace("&", "&"); // replaces all &, so & becomes &
Run Code Online (Sandbox Code Playgroud)
kha*_*son 40
您可以使用具有负前瞻的正则表达式.
正则表达式字符串将是&(?!amp;).
使用replaceAll,你会得到:
A&B
A & B
A& B
A &B
A&B
A & B
A& B
A &B
Run Code Online (Sandbox Code Playgroud)
所以单个字符串的代码str是:
str.replaceAll("&(?!amp;)", "&");
Run Code Online (Sandbox Code Playgroud)
你可以试试这个,它应该可以工作:
data = data.replaceAll("&","&").replaceAll("&","&");
Run Code Online (Sandbox Code Playgroud)
这样,您首先将所有内容替换为&,&因此您将拥有的只是&,然后,您将所有内容替换为&。
| 归档时间: |
|
| 查看次数: |
34828 次 |
| 最近记录: |