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

时间:2014-09-04 09:25:46

标签: c# string

我们说我有一个字符串:

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

我想从该字符串中删除' steam.exe'以及之后的一切。所以我的修剪过的字符串看起来像是:

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

我怎样才能在C#中做到这一点?

4 个答案:

答案 0 :(得分:9)

只需使用IndexOfSubstring方法:

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

答案 1 :(得分:8)

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

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

text.Substring(0, indexOfSteam)相同。它只是让意图更清晰。

答案 2 :(得分:2)

使用System.IO.Path

Path.GetDirectoryName(filepath)

将返回“C:\ Program Files(x86)\ Steam”

答案 3 :(得分:-4)

...
string str_ = "123\123"
string str_splitted = str_.split(@"\")[0];
...
编辑:这是我的解释:

在我看来,字符串的split-Function是获得想要结果的最简单的解决方案。因为您可以指定一个特定的字符串来将字符串拆分到此位置。

您始终可以完全控制该过程;)