<?xml version='1.0'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:atom="http://www.w3.org/2005/Atom" >
<channel>
	<title><![CDATA[BOL: Perl script to find palindromic pattern !]]></title>
	<link>https://bioinformaticsonline.com/snippets/view/37489/perl-script-to-find-palindromic-pattern?</link>
	<atom:link href="https://bioinformaticsonline.com/snippets/view/37489/perl-script-to-find-palindromic-pattern?" rel="self" type="application/rss+xml" />
	<description><![CDATA[]]></description>
	
	<item>
	<guid isPermaLink="true">https://bioinformaticsonline.com/snippets/view/37489/perl-script-to-find-palindromic-pattern</guid>
	<pubDate>Mon, 06 Aug 2018 09:28:25 -0500</pubDate>
	<link>https://bioinformaticsonline.com/snippets/view/37489/perl-script-to-find-palindromic-pattern</link>
	<title><![CDATA[Perl script to find palindromic pattern !]]></title>
	<description><![CDATA[<code>#!/usr/bin/perl
use strict;
use warnings;
use strict;
my %invert; @invert{ qw[ A C G T ] } = qw[ T G C A ];
my $in = do{ local $/; &lt;DATA&gt; };
chomp $in;
print $in;
for my $p1 ( 1 .. length( $in ) -2 ) {
    next unless substr( $in, $p1, 1 ) eq $invert{ substr $in, $p1+1, 1 };
    my $pals = 0;
    for my $p2 ( 1 .. $p1 -1 ) {
        last unless substr( $in, $p1-$p2, 1 ) eq $invert{ substr $in, $p1+$p2+1, 1 };
        ++$pals;
    }
    if( $pals ) {
my $val=substr( $in, $p1-$pals, ($pals+1)*2 );
	my $st=$p1-$pals;
	my $sLen=($pals+1)*2;
	my $ed=($st+$sLen)-1;
	
	print &quot;$st\t$ed\t$sLen\t$val\n&quot;;

        printf &quot;%s%s at %d\n&quot;, &#039; &#039;x($p1-$pals),
            substr( $in, $p1-$pals, ($pals+1)*2 ), $p1-$pals;
    }
}
__DATA__
AGAGGTCAGTCTGCATCGTATCGATCGTCGACGATCGATACGATGCAGACTGACGAGAG</code>]]></description>
	<dc:creator>Rahul Nayak</dc:creator>
</item>

</channel>
</rss>