简单的正则表达式为:
string input = "Give [Me Some] Purple (And More) Elephants";string regex = "(\[.*\])|(".*")|('.*')|(\(.*\))";string output = Regex.Replace(input, regex, "");
至于要在其中构建正则表达式的自定义方式,您只需要构建以下部分:
('.*') // example of the single quote check
然后像我的原始示例一样,将每个正则表达式部分与一个OR(正则表达式中的|)串联起来。构建完正则表达式字符串后,只需运行一次。关键是使正则表达式成为一项检查,因为对一项执行许多正则表达式匹配,然后遍历许多项可能会导致性能显着下降。
在我的第一个示例中,它将替换以下行:
string input = "Give [Me Some] Purple (And More) Elephants";string regex = "Your built up regex here";string sOutput = Regex.Replace(input, regex, "");
我确信有人会发布一个很酷的linq表达式,以根据要匹配的分隔符对象数组来构建正则表达式。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)