【问题标题】:How can I get a character in a string by index?如何通过索引获取字符串中的字符?
【发布时间】:2011-01-25 21:22:47
【问题描述】:

我知道我可以使用indexof() 函数返回字符串中特定字符的索引,但是如何返回特定索引处的字符呢?

【问题讨论】:

  • 我确定我遗漏了一些东西,但是如果您知道调用indexof() 时要使用的字符,那么为什么需要从字符串中获取它呢?您可以使用 indexof() 返回该字符,以证明它首先在字符串中。
  • ^ 是的,缺少阅读能力。 OP 没有说他/她已经有了这个角色,甚至没有说任何接近这个角色的东西。
  • @MikeTwo OP 知道字符的索引。

标签: c# .net string indexof


【解决方案1】:
string s = "hello";
char c = s[1];
// now c == 'e'

另见Substring,返回多个字符。

【讨论】:

    【解决方案2】:

    你的意思是这样的

    int index = 2;
    string s = "hello";
    Console.WriteLine(s[index]);
    

    字符串也实现了IEnumberable<char>,所以你也可以像这样枚举它

    foreach (char c in s)
        Console.WriteLine(c);
    

    【讨论】:

    • 我怎样才能使用你的第二个选项,(枚举)但一次计算两个字符?例如“4567”将首先输出到“45”,然后是“67”。我该怎么做?谢谢:)
    • @Momoro:foreach (string substring in s.Chunk(2)) { ... }Enumerable.Chunk 内置在 .NET 6+ 中,您可以在此处找到其他版本的示例实现:stackoverflow.com/q/12389203/87698
    猜你喜欢
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 2014-12-02
    • 2012-06-29
    • 1970-01-01
    • 2021-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多