【问题标题】:Substring in c# to find second part in the string [duplicate]c#中的子字符串在字符串中查找第二部分[重复]
【发布时间】:2019-03-01 13:35:03
【问题描述】:

如何在c#中使用子字符串查找字符串的第二部分

我有以下字符串:

string str = "George Micahel R - 412352434";

我想把上面的字符串分成两部分。在“-”之前和“-”之后

我的第一部分使用以下代码:

 string firstPart = str.Substring(0,str.IndexOf(" - "));

当我使用以下代码尝试第二部分时,它给了我一个错误。

 string secondPart = str.Substring(str.IndexOf(" - "), Len(str);

如何获得第二部分(只有数字)?

提前致谢。

【问题讨论】:

  • string.Split 有什么问题?
  • c# 中没有名为 Len 的内容,但如果需要长度,可以使用 str.Length
  • 您的第二个示例有语法错误,它在 ; 之前缺少一个括号。并且没有内置的Len 方法。此外,您现在使用的长度值将导致 OutOfRange 异常。您可能想look up 确切地说第二个值是如何使用的。但是,是的,只需使用 string.split() tbh。 docs.microsoft.com/en-us/dotnet/api/…
  • 如果你想分割一个字符,没有比string.Split()更好的方法了
  • 您昨天问了一个问题 (here),表明您已经知道 string.Split。好像一天后你又忘记了。诡异的。 (在我看来,这是一个很好的例子,表明只是用准备好的复制粘贴代码 sn-ps 向提问者抛出答案实际上可以降低他们学习某些东西的可能性......)

标签: c# string


【解决方案1】:

请改用 Split() 方法。

string str = "George Micahel R - 412352434";
string[] words = str.Split('-');
Console.WriteLine(words[0].Trim()); # George Micahel R
Console.WriteLine(words[1].Trim()); # 412352434

【讨论】:

  • 这里没有必要使用“code sn-p”——它们只能运行 HTML/JavaScript 示例
  • 我在正确插入格式化代码时遇到了麻烦。我只是说'拧它'只是为了看起来不错。我应该使用什么按钮?
  • 您可以使用 Ctrl+K 将突出显示的文本部分格式化为代码,或者小编辑器 GUI 中的按钮看起来像 {}。我认为网站上的某个地方有一个关于编辑器的帮助部分。
【解决方案2】:

只需使用拆分功能:

var splittedArray = str.Split('-');
var leftPart = splittedArray[0];
var rightPart = splittedArray[1];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-04-14
    • 2020-02-14
    • 2014-05-09
    • 2020-02-24
    • 1970-01-01
    • 2013-10-02
    • 2014-02-27
    • 2011-01-08
    相关资源
    最近更新 更多