4

我们如何在字符串中'替换为。\\'(这可以使用但是,只有在没有或之前Regex.IsMatch(), Regex.Matches(), Regex.Replace() 才应该这样做。(这是我卡住的地方)'\\\

这意味着找到所有'没有\\\之前没有的,然后添加相同的,即'替换为\\'

示例字符串:'abcd\'efg'hijkl'mno\\'pqrs'

结果字符串:\\'abcd\\'efg\\'hijkl\\'mno\\'pqrs\\'

4

2 回答 2

10

甚至不需要正则表达式。

var newStr = oldStr.Replace("\\'", "'").Replace("'", "\\'");

使用正则表达式,您可以找到之前'没有的所有内容\\

[^\\]'
于 2013-05-02T13:50:58.187 回答
5

我认为@YoryeNathan 赢了。但只是为了教一个正则表达式课程,这正是负面的后向断言存在的原因。代替

(?<!\\\\)'

\\'

用法

string output = Regex.Replace(input, "(?<!\\\\)'", "\\'");
于 2013-05-02T13:52:35.240 回答