如何加速我的Perl正则表达式匹配?

前端之家收集整理的这篇文章主要介绍了如何加速我的Perl正则表达式匹配?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使用以下正则表达式捕获几个文本:

$text_normal = qr{^(\/F\d+) FF (.*?) SCF SF (.*?) MV (\(.*?)SH$};

字符串的示例如下所示:

my $text = '/F12345 FF FF this is SCF SF really MV (important stuff SH';

可以重写以加快匹配吗?

解决方法

优化正则表达式没有单一的答案.您可以使用 re编译指示查看特定正则表达式正在执行的操作:

use re 'debugcolor';

一旦你看到它遍历字符串,你会看到它出现问题的位置并从那里调整你的正则表达式.当你这样做时,你将学习一些关于正则表达式引擎的知识.

您还应该查看Mastering Regular Expressions,它告诉您正则表达式如何工作以及为什么某些模式比其他模式慢.

猜你在找的Perl相关文章