Perl   发布时间:2022-04-07  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在Perl正则表达式中提取第n个匹配项?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在一串单引号词中提取第n个匹配?
use Strict;
use warnings;

my $String1 = "'I want to' 'extract the word' 'Perl','from this String'";
my $String2 = "'what about','getTing','Perl','from','here','?'";

sub extract_quoted { 

    my ($String,$indeX) = @_;
    my ($wanted) = $String =~ /some_regex_using _$index/;
    return $wanted;
}

extract_wanted ($String1,3); # Should return 'Perl',with quotes
extract_wanted ($String2,with quotes

解决方法

你可以试试:
sub extract_quoted {

        my ($String,$indeX) = @_;
        while($String =~ /'(.*?)'/g) {
                $index--;
                return $1 if(! $indeX); # return $1 if index became 0. 
        }
        return; # not found - returns undef or () depending on context.
}

大佬总结

以上是大佬教程为你收集整理的如何在Perl正则表达式中提取第n个匹配项?全部内容,希望文章能够帮你解决如何在Perl正则表达式中提取第n个匹配项?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。