查找字符串 C# 中单个字符的索引

本文关键字:字符 索引 单个 字符串 查找 | 更新日期: 2023-09-27 18:31:48

我对这段代码感到困惑。

string str = sample.indexof("a",0);

它正在工作。但下面不起作用。

string str = sample.indexof("'",0);

查找字符串 C# 中单个字符的索引

您需要在 C# 中转义字符串和字符文本中的反斜杠 - 或使用逐字字符串文本。以下任何一项都将起作用:

int index = sample.IndexOf("''", 0);
int index = sample.IndexOf(@"'", 0);
int index = sample.IndexOf('''', 0);

或者不指定初始索引,如果您无论如何都要从头开始查看:

int index = sample.IndexOf("''");
int index = sample.IndexOf(@"'");
int index = sample.IndexOf('''');

就个人而言,如果您只寻找一个字符,我会使用最后一个 - 更清楚的是它实际上只是一个字符。(它可能也稍微更有效,但清晰度更重要。

(请注意,C# 区分大小写 - 它是IndexOf,而不是indexof。另请注意,它返回 int ,而不是 string 。如果您可以使示例代码准确,这会有所帮助...

因为''是转义序列字符,你可以尝试以下选项之一来工作

int i = sample.indexof("''",0)

int i = sample.IndexOf(@"'", 0);