替换最后一个字

时间:2011-04-27 11:27:53

标签: c# regex

我想将最后一个字符串替换为“”..

例如: - 字符串是苹果和芒果 输出应该是 apple和mango

如果最后一个单词是OR,NOT,我必须将其替换为“”....

提前致谢....

5 个答案:

答案 0 :(得分:1)

不需要正则表达式:

string GetTrimmed(string str, string ending) 
{
  return str.EndsWith(ending) ?
    str.Substring(0, str.Length - ending.Length) :
    str;
}

答案 1 :(得分:1)

尝试使用Regex.ReplaceSystem.Text.RegularExpressions

Regex.Replace("This is the sentence AND", @"(AND|OR|NOT)\z", "");

\z是“字符串的结尾”-anchor

之后你还应该使用string.Trim()来修剪多余的空格。

答案 2 :(得分:0)

简单的正则表达式:

/( (and|or|not))$/i

在字符串的末尾匹配一个空格,后跟'and','或'或'not'。结束正则表达式标记后的i告诉它不区分大小写。

答案 3 :(得分:0)

您可以将该字词与以下正则表达式匹配:

.*(\s+(or|not|and)\s*)$

答案 4 :(得分:0)

你对那里的空格并不确切,但是下面的正则表达式应该这样做:

s/ \(and\|or\|not\) *$//gi