如何删除某个字符最后一次重复后的所有文本

leo*_*ora 9 c# string parsing

给定任何字符串,我想删除特定字符后的任何字母.

这个字符可能在字符串中多次出现,我只想将它应用于最后一次出现.

所以我们说"/"是字符,这里有一些例子:

http://www.ibm.com/test ==> http://www.ibm.com
hello/test ==>你好

Xav*_*nas 31

if (text.Contains('/'))
    text = text.Substring(0, text.LastIndexOf('/'));
Run Code Online (Sandbox Code Playgroud)

要么

var pos = text.LastIndexOf('/');
if (pos >= 0)
    text = text.Substring(0, pos);
Run Code Online (Sandbox Code Playgroud)

(编辑以涵盖字符串中不存在'/'的情况,如评论中所述)

  • ...假设字符串中存在'/'.否则你会得到一个'ArgumentOutOfRangeException`. (5认同)