【问题标题】:How to remove all characters from a string before a specific character如何从字符串中删除特定字符之前的所有字符
【发布时间】:2015-01-26 19:06:06
【问题描述】:

假设我有一个字符串A,例如:

string A = "Hello_World";

我想删除直到(包括)_ 的所有字符。 _ 之前的确切字符数可能会有所不同。在上面的例子中,A == "World" 删除后。

【问题讨论】:

    标签: c# string substring trim


    【解决方案1】:
    string A = "Hello_World";
    string str = A.Substring(A.IndexOf('_') + 1);
    

    【讨论】:

      【解决方案2】:

      您已经收到a perfectly fine answer。如果您愿意更进一步,您可以将a.SubString(a.IndexOf('_') + 1) 包装成一种强大且灵活的扩展方法:

      public static string TrimStartUpToAndIncluding(this string str, char ch)
      {
          if (str == null) throw new ArgumentNullException("str");
          int pos = str.IndexOf(ch);
          if (pos >= 0)
          {
              return str.Substring(pos + 1);
          }
          else // the given character does not occur in the string
          {
              return str; // there is nothing to trim; alternatively, return `string.Empty`
          }
      }
      

      你会这样使用:

      "Hello_World".TrimStartUpToAndIncluding('_') == "World"
      

      【讨论】:

        【解决方案3】:
        string a = "Hello_World";
        a = a.Substring(a.IndexOf("_")+1);
        

        试试这个?还是包含 A=Hello_World 中的 A= 部分?

        【讨论】:

          【解决方案4】:
          var foo = str.Substring(str.IndexOf('_') + 1);
          

          【讨论】:

            【解决方案5】:
            string orgStr = "Hello_World";
            string newStr = orgStr.Substring(orgStr.IndexOf('_') + 1);
            

            【讨论】:

              【解决方案6】:

              你可以通过创建一个子字符串来做到这一点。

              简单的例子在这里:

              public static String removeTillWord(String input, String word) {
                  return input.substring(input.indexOf(word));
              }
              
              removeTillWord("I need this words removed taken please", "taken");

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2017-04-16
                • 2015-09-05
                • 1970-01-01
                • 2016-01-02
                • 2011-06-23
                相关资源
                最近更新 更多