相关疑难解决方法(0)

我可以在逐字字符串文字中转义双引号吗?

在C#中的逐字字符串文字(@"foo")中,反斜杠不被视为转义,因此执行"获取双引号"不起作用.有没有办法在逐字字符串文字中获得双引号?

这可以理解为不起作用:

string foo = @"this \"word\" is escaped";
Run Code Online (Sandbox Code Playgroud)

c# string escaping literals verbatim-string

522
推荐指数
5
解决办法
39万
查看次数

拆分具有空格的字符串,除非它们包含在"引号"中?

简单来说:

string streamR = sr.ReadLine();  // sr.Readline results in:
                                 //                         one "two two"
Run Code Online (Sandbox Code Playgroud)

我希望能够将它们保存为两个不同的字符串,删除所有空格除了引号之间的空格.因此,我需要的是:

string 1 = one
string 2 = two two
Run Code Online (Sandbox Code Playgroud)

到目前为止,我发现有效的是以下代码,但它删除了引号内的空格.

//streamR.ReadLine only has two strings
  string[] splitter = streamR.Split(' ');
    str1 = splitter[0];
    // Only set str2 if the length is >1
    str2 = splitter.Length > 1 ? splitter[1] : string.Empty;
Run Code Online (Sandbox Code Playgroud)

这个的输出变成了

one
two
Run Code Online (Sandbox Code Playgroud)

我已经研究过正则表达式来分隔空格,除非引用但是我似乎无法获得正则表达式来工作/理解代码,特别是如何分割它们以便它们是两个不同的字符串.那里的所有代码都给我一个编译错误(我正在使用System.Text.RegularExpressions)

c# split

46
推荐指数
4
解决办法
3万
查看次数

标签 统计

c# ×2

escaping ×1

literals ×1

split ×1

string ×1

verbatim-string ×1