删除一个单词和后面的所有内容

本文关键字:单词 一个 删除 | 更新日期: 2023-09-27 18:20:40

假设我有一个字符串:

"C:'Program Files (x86)'Steam'steam.exe /lets go 342131 some random text"

我想从这个字符串中删除"steam.exe"以及之后的所有内容。所以我修剪过的字符串看起来像:

"C:'Program Files (x86)'Steam'"

我如何在C#中做到这一点?

删除一个单词和后面的所有内容

只需使用IndexOfSubstring方法:

int index = str.IndexOf("steam.exe");  
string result = str.Substring(0, index);

如果您想从字符串末尾删除某些内容,请使用String.Remove:

int indexOfSteam = text.IndexOf("steam.exe");
if(indexOfSteam >= 0)
    text = text.Remove(indexOfSteam);

text.Substring(0, indexOfSteam)相同。这只是让意图更加明确。

使用System.IO.Path:

Path.GetDirectoryName(filepath)

它将返回"C:''Program Files(x86)''Stream"

...
string str_ = "123'123"
string str_splitted = str_.split(@"'")[0];
...

编辑:这是我的解释:

在我看来,字符串的split函数是获得所需结果的最简单的解决方案。因为您可以指定一个特定的字符来在这个位置拆分字符串。

您始终完全控制流程;)