如何根据字符串数组的内容从字符串中删除字符串

本文关键字:字符串 删除 何根 数组 | 更新日期: 2023-09-27 18:00:22

检查某个东西是否包含myString中任何元素的任何实例。有些东西可能是"Sideboard:1 Forest"、"SB:1 Mountain"、"SB 1 Plains"等。如果某个东西确实包含数组中的任何元素,那么这些元素后面总是有一个空白、一个数字、一个空白和一个字符串:"1 Swamp"。

string[] myString = {"Side", "side", "Board", "board", "Sideboard", "sideboard", "SB", "sb", "SB:", "sb:"};
if(myString.Any(s => something.Contains(s)))
{
    // newSomething = something but with any instance of any element in myString removed
    // from the start of something up to the first whitespace.
}

我需要帮助删除上面if语句块中的部分注释。

编辑

这些都是直率的回应,但我理解!

我确实看过介绍,并试图搜索相关内容,但找不到这种情况。这是一个小程序,我做的个人使用,而不是一个任务。我对正则表达式一无所知。

至于澄清,在程序中发现"something"包含"myString"数组中的任何元素时,我只想从"somethings"中字符串的开头删除这些元素。

例如:something="侧板:1个由内而外"

我只想从字符串的开头和数字之前删除"myString"元素,因为数字后面的字符串也可能包含"myString"的元素。

此外,在提交这个问题时,我立即找到了一种删除的方法:我只是将TrimStart()与一个包含"myString"中元素的单个字符的数组一起使用。这是我想要的,但我一直在问这个问题,以寻找一个更优雅的解决方案。因此,就所有意图和目的而言,这个问题已经得到了回答。

谢谢你的帮助!

如何根据字符串数组的内容从字符串中删除字符串

string newSomething = something.Substring(0, something.IndexOf(' '));

上面的代码将返回一个字符串,该字符串以"something"字符串中空格的第一个实例结尾。如果"something"字符串中没有空格,则会出现异常。

不确定这是否是你想要的,祝你好运。