Regex 正则表达式替换转义字符

Regex 正则表达式替换转义字符,regex,regex-lookarounds,Regex,Regex Lookarounds,我正在尝试构建一个正则表达式来替换我的转义字符。我的转义字符是反斜杠(\)。例如: lastname[ct]sam\\\,ple 应获得: lastname[ct]sam\,ple 首先,我试着用这个: ([\\]{1})(.?) 匹配正确的组(“\\”和“\,”)。然后我试着用积极的前瞻性来获得反斜杠,但没有真正起作用: (?=([\\]{1}[^\\]{1}))(.?) 它只匹配逗号前的反斜杠,而不是反斜杠前的反斜杠。有人知道我的错误在哪里吗 匹配反斜杠并用正则表达式捕获后续字符,并

我正在尝试构建一个正则表达式来替换我的转义字符。我的转义字符是反斜杠(\)。例如:

lastname[ct]sam\\\,ple
应获得:

lastname[ct]sam\,ple
首先,我试着用这个:

([\\]{1})(.?)
匹配正确的组(“\\”和“\,”)。然后我试着用积极的前瞻性来获得反斜杠,但没有真正起作用:

(?=([\\]{1}[^\\]{1}))(.?)
它只匹配逗号前的反斜杠,而不是反斜杠前的反斜杠。有人知道我的错误在哪里吗

匹配反斜杠并用正则表达式捕获后续字符,并仅使用
$1
反引用替换为捕获的字符

在Java中,您可以使用

String my_input = "\\\\\\,sample"; // => \\\,sample
String result = my_input.replaceAll("\\\\(.)", "$1");
System.out.println(result); // => \,sample

看。

你试过了吗?匹配反斜杠并捕获后续字符,并仅替换为捕获的字符。@WiktorStribiżew我不确定如何在java上进行替换。我试试看!在Java中:
s.replaceAll(“\\\\\()”,“$1”)
@WiktorStribiżew我简直太惊讶了!非常感谢你!请张贴您的答案,以便我可以接受;)