我正在使用Regex来检索段落。我的字符串变量中的段落包含起始字母G.并且它以变量@Variable结束。
我会用什么模式来抓住那个段落?我正在使用下面的代码,但我认为我真的没有。
Regex.Match(paragraph, @"\G. .*\@Variable$");
答案 0 :(得分:2)
这将是这样的:
string regex = @"G.+" + variable.ToString()
Regex.Match(paragraph, regex);
虽然您正在抓取Expresso的副本 - 让这样的任务变得更加轻松。
答案 1 :(得分:1)
我想你可能正在寻找这样的东西:
Regex.Match(paragraph, string.Format(@"^G.*?{0}$", yourVariableHere));
答案 2 :(得分:1)
我认为这就是你想要的(如果我理解你的要求):
string regex = @"G.+" + variable;
Regex.Match(paragraph, regex);
有几点需要注意,如果variable
中包含\
之类的内容会导致你的正则表达式搞乱,你必须要小心。正则表达式中有“保留”字符,你必须小心,以免引起问题。
此外,我使用的.*
代替.+
,意思是“在一个和无限的时间之间”,而不是“在零和无限时间之间”,所以它要求你的至少有一个其他角色“段”。您可能希望添加.{10,}
之类的内容,根据您的需要,这些内容最少可以包含10个字符。