C# 执行正则表达式需要很长时间
我使用这个谓词生成器创建了用于LINQ查询的过滤器表达式。 所以,虽然构建过程中包含了正则表达式以匹配特定条件,但执行任何改进的原因或方法都需要很长时间 例如:C# 执行正则表达式需要很长时间,c#,.net,regex,predicatebuilder,C#,.net,Regex,Predicatebuilder,我使用这个谓词生成器创建了用于LINQ查询的过滤器表达式。 所以,虽然构建过程中包含了正则表达式以匹配特定条件,但执行任何改进的原因或方法都需要很长时间 例如: stringvalue.contains(word) 执行速度快于: Regex.IsMatch(stringvalue,@"\b"+word+@"\b",regexoptions.compiled) 当然,您编写的正则表达式调用的作用远不止检查子字符串是否存在: 它只检查整个单词“arf”。
stringvalue.contains(word)
执行速度快于:
Regex.IsMatch(stringvalue,@"\b"+word+@"\b",regexoptions.compiled)
当然,您编写的正则表达式调用的作用远不止检查子字符串是否存在:
Regex.IsMatch(“arf”,@“\ba\b”)==false
RegexOptions.Compiled
标志
至于一般的正则表达式,我建议更新到.NET5,正则表达式匹配已经有了高达95%的显著改进,特别是像您这样的简单表达式