【问题标题】:How to parse the numbers from the text and display it in textBox? c#如何解析文本中的数字并将其显示在文本框中? C#
【发布时间】:2012-11-04 21:52:06
【问题描述】:

我有一个包含以下文本的字符串:

:0c4b7fcdffc38322555a9e35c22c9469:Nick:194176015020283762507:

如何解析最终数字?即:

194176015020283762507

【问题讨论】:

    标签: c# text numbers tokenize


    【解决方案1】:

    您应该首先使用String.Split() 用冒号(':')分隔符分隔字符串。然后访问正确的元素。

    var input = ":0c4b7fcdffc38322555a9e35c22c9469:Nick:194176015020283762507:";
    var split = input.Split(':');
    var final = split[3];
    

    请注意,默认情况下,Split() 保留空条目。由于初始冒号和结尾冒号,您将在开头和结尾都有一个。你也可以使用:

    var split = input.Split(new[] {':'}, StringSplitOptions.RemoveEmptyEntries);
    var final = split[2];
    

    正如选项所暗示的那样,它从数组中删除空条目。因此,您的号码将位于索引 2 而不是 3。

    【讨论】:

    • 欢迎来到 StackOverflow!请记住对任何有帮助的答案进行投票,并接受最能回答您问题的答案。
    • Split 方法没有重载,它接受 char 和 split 选项。
    • @lazyberezovsky 谢谢,已修复。
    【解决方案2】:
    string str = ":0c4b7fcdffc38322555a9e35c22c9469:Nick:194176015020283762507:";
    string num = str.Split(':')[3];
    

    【讨论】:

      【解决方案3】:
      var finalNumber = input.Split(new char[] { ':' }, StringSplitOptions.RemoveEmptyEntries)
                             .Last()
      

      此代码会将您的输入字符串拆分为以: 分隔的字符串(从序列的开头和结尾删除空字符串)。并返回最后一个字符串,即您的 finalNumber。

      【讨论】:

        猜你喜欢
        • 2013-09-21
        • 2016-02-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-05-23
        • 1970-01-01
        • 2014-04-13
        相关资源
        最近更新 更多