1

我目前有一个字符串1_0707201206050239,我想截断包括字符在内的所有_字符。

问题是左侧的字符会根据用户输入而变化,因此字符串的长度总是不同的。的右侧_表示日期和时间(例如07-07-2012 6:05:02.390AM),长度可以在 17-14 个字符之间变化。

所以我想知道是否有办法截断直到_检测到?

4

4 回答 4

8
text.Substring(0, text.IndexOf('_'));
于 2012-07-24T18:14:18.880 回答
1

您还可以使用:

String.Substring(0, String.indexOf('_'));
于 2012-07-24T18:15:58.037 回答
1

如何使用 String.Remove

theString = theString.Remove(sourceString.IndexOf('_'), 1);
于 2012-07-24T18:25:09.327 回答
1

怎么样,如果字符串中没有出现字符,则返回整个字符串:

static class StringExtensions
{
    internal static string TruncateAtFirst(this string str, params char [] ch)
    {
        int i = str.IndexOfAny(ch);
        return (i < 0 ? str : str.Substring(0, i));
    }
}

"abcdefg".TruncateAtFirst('c')      // "ab" 
"abcdefg".TruncateAtFirst('e', 'b') // "a"
"abcdefg".TruncateAtFirst('z')      // "abcdefg"
       "".TruncateAtFirst('z')      // ""

使用字符串也很容易。

于 2019-10-23T17:17:25.960 回答