我正在使用这个正则表达式来查找基因组中的模式.
$string =~ /(?i)a+t?|(?i)t+/g
为了使输出更容易阅读,我想修改它,以便将匹配的任何东西大写为4到7个字符长.它也不应该弄乱$[0]或$ – [0]变量.
我输出的方法是根据’$[0]’和’$[0]从较大的字符串文件中获取一个子字符串我不想打印出我正在打印出来的正则表达式匹配纠正器的字符串,我希望匹配突出.
解决方法
通过适当的测试(对于你的匹配和长度(可能需要像{4,7}这样的量词的字符组),没有示例内容这留给你)你可以使用eval替代s /(匹配)/ uc($1 )/例如哪个将获取匹配的字符串并使其为大写,然后将替换匹配替换匹配.
一如既往,请阅读perldoc perlre
perldoc perlreref
perldoc perlretut
作为旁注,我一直想知道基因组是否是Regexp::Grammars
的好候选人?