正则表达式删除c#中两个字符之间的文本

Regex to remove text between two chars in c#

我有以下字符串,我需要删除 =select 和以下 } char

之间的所有内容

例如。 输入类型:=select来自有线电视的前10个类型}

最终结果是要显示的字符串变量输入类型:

我一直在寻找一种使用 Regex 执行此操作的方法,但我也对其他方法持开放态度。在此先感谢您的帮助。

var rx = new Regex("=select[^}]*}");;

Console.WriteLine(rx.Replace ("Enter Type:=select top 10 type from cable}", ""));

Regexp.Replace(string input,string output) 函数将匹配给定正则表达式的所有子字符串替换为字符串 "output"。第一行定义匹配 =select 和 }

之间所有内容的正则表达式
string input = "Enter Type:=select top 10 type from cable}";

System.Text.RegularExpressions.Regex regExPattern = new System.Text.RegularExpressions.Regex("(.*):=select.*}");
System.Text.RegularExpressions.Match match = regExPattern.Match(input);

string output = String.Empty;
if( match.Success)
{
    output = match.Groups[1].Value;
}

Console.WriteLine("Output = " + output);

'output' 变量的值将是在输入字符串的“:=select”段之前找到的值。如果您需要从输入字符串中提取其他信息,将其括在括号中,找到的匹配项将添加到 match.Groups 数组中。对了,match.Groups[0]的值。value是原来的字符串。