从字符串中删除已知的子字符串

本文关键字:字符串 删除 | 更新日期: 2023-09-27 18:10:19

我有一个字符串"Kishore kumar karaoke tracks",我想从中删除子字符串"karaoke tracks"。我希望输出为"Kishore kumar"。

为此,我使用以下代码行:

artist = artist.TrimEnd(new char[] {'k','a','r','a','o','k','e', ' ', 't','r','a','c','k','s'});

但是,我得到的输出是"Kishore kum",即我没有得到最后两个字符"ar"。

我哪里错了?

从字符串中删除已知的子字符串

您只需执行artist = artist.Replace("karaoke tracks", "").Trim()

使用简单的String.Replace也可以:

artist = artist.Replace(" karaoke tracks", "");

注意,我在前面加了一个空格,所以结果是"Kishore kumar",而不是"Kishore kumar "

你也可以这样做

artist.Replace(" karaoke tracks",string.Empty);
artist = artist.Replace("karaoke tracks", string.Empty).Trim();

如果您想忽略案例,也可以这样做:

artist = Regex.Replace(artist, "karaoke tracks", string.Empty, RegexOptions.IgnoreCase).Trim();
在Trim中,您定义了要从artist中删除的字符。但它也有ra两个字符。

所以当karaoke tracks结束时,下一个是kumar's ar,如果你理解我的意思的话。

您可以像其他人解释的那样使用替换功能。