用{{2nd @ with}}替换第一个@

时间:2018-05-31 09:22:18

标签: java regex replace

我有一个文件,其值以@开头,以@

结尾

到目前为止,我需要将第一个@替换为{{和第二个@with}}用于整个文档,但我没有运气。

看到很多关于更换的解决方案,但不是为此。希望有人可以帮助我。 谢谢!

2 个答案:

答案 0 :(得分:1)

您可以匹配和@,然后使用否定的字符类匹配而不是@并在组中捕获(捕获的组1)并最终再次匹配@。作为替换使用{{group1}}

<强>匹配

@([^@]+)@

<强>替换

{{$1}}

示例代码

String regex = "@([^@]+)@";
String string = "@testvalue1@ text @testvalue2@ text";
String subst = "{{$1}}";
System.out.println(string.replaceAll(regex, subst));

Demo

答案 1 :(得分:0)

你应该使用这个正则表达式:

    @.*?@

然后将第一场比赛换成其他比赛。