C#字符串-创建一个无反斜杠

本文关键字:一个 字符串 创建 | 更新日期: 2023-09-27 18:20:37

我正在使用.NET(C#)代码编写与Perl应用程序接口的数据库。当字符串中出现单引号时,我需要对其进行"转义"。IOW,对于数据库UPDATE,名称O'Bannon应该转换为O''Bannon。然而,所有的字符串操作(例如.Replace)都会为反斜杠生成一个转义符,最后我得到了O'''Bannon

我知道它实际上是在生成第二个反斜杠,因为我可以读取结果数据库字段的值(即,它不仅仅是字符串的IDE调试值)。

如何在输出字符串中只获得一个反斜杠?

R

C#字符串-创建一个无反斜杠

我做了

"O'Bannon".Replace("'","'''")

结果是

"O''Bannon"

这是你想要的吗?

您可以使用"''",它是后面跟着反斜杠的转义符。

请参阅此处的转义序列列表:http://msdn.microsoft.com/en-us/library/h21280bw.aspx

甚至更好地为替换分配一个var,以便在需要时也可以检查

var RepName = "O'Bannon";
var Repstr = RepName.Replace("'","'''");

您还可以使用逐字逐句的字符串

s = s.Replace("'", @"''");