>hsa_circ_0067224|chr3:128345575-128345675-|NM_002950|RPN1 FORWARD
-4.4 6 .. 17 xxxxxxxxxxGTGAC CAGT ATGC ACT
+G AAGATGAGGTTTGTG
-0.9 5 .. 18 xxxxxxxxxxxGTGA CCAGT ATGC ACT
+GA AGATGAGGTTTGTGG
None 1 .. 20 xxxxxxxxxxxxxxx GTGACCAGTATGCACT
+GAAG ATGAGGTTTGTGGAC
None 2 .. 21 xxxxxxxxxxxxxxG TGACCAGTATGCACTG
+AAGA TGAGGTTTGTGGACC
None 6 .. 25 xxxxxxxxxxGTGAC CAGTATGCACTGAAGA
+TGAG GTTTGTGGACCATGT
-2.3 5 .. 26 xxxxxxxxxxxGTGA C CAGTATGCACTGAAGA
+TGAG G TTTGTGGACCATGTG
-3.2 4 .. 27 xxxxxxxxxxxxGTG AC CAGTATGCACTGAAGA
+TGAG GT TTGTGGACCATGTGT
-1.9 3 .. 28 xxxxxxxxxxxxxGT GAC CAGTATGCACTGAAGA
+TGAG GTT TGTGGACCATGTGTT
If I typed -3 I should be left with:
>hsa_circ_0067224|chr3:128345575-128345675-|NM_002950|RPN1 FORWARD
-4.4 6 .. 17 xxxxxxxxxxGTGAC CAGT ATGC ACT
+G AAGATGAGGTTTGTG
-3.2 4 .. 27 xxxxxxxxxxxxGTG AC CAGTATGCACTGAAGA
+TGAG GT TTGTGGACCATGTGT
So far it is only able to filter the 'None'. Shouldn't $RE{num}{real}{-places=>2} capture real &
irrational numbers?
The script:
#!/usr/bin/perl
use strict;
use warnings;
use Regexp::Common qw /number/;
print "Enter limit: ";
chomp( my $limit = <STDIN> );
$limit = abs($limit);
open my $IN, '<', "xt_spacer_results.hairpin" or die $!;
open my $SIFTED, '>', "new_xt_spacer_results.hairpin" or die $!;
while (<$IN>){
next if /^None/;
next if /^($RE{num}{real}{-places=>2})/ && $1 > $limit;
print $SIFTED $_;
}
close $IN;
close $SIFTED;
|