#!/usr/bin/perl
# https://perlmonks.org/?node_id=1217240
use strict;
use warnings;
open my $patterns, '<', \<<END;
ATCCCACCGCTGCCACCA
ACCCTGCTCGCTGCGCCA
TCCCCGGCACCTCCACCA
TCCCCGGCATCTCCACCA
ATCCTGCCGACTACGCCA
TCGATTCCCGGCCCATGCACCA
TCGATTCCCGGCCAACGCACCA
GTCCCACCAGAGTCGCCA
ACCCCACTCCTGGTACCA
GTCCCTTCGTGGTCGCCA
END
open my $fh, '<', \<<END;
AACCCCATCCCACCGCTGCCACCA 1
AACCCCATCCTCGTCGCC 1
AACCCCATGAAATAAGAG 2
AACCCCATGATCAGGACAAG 1
AACCCCATTAAAAAATGG 1
AACTGGATTCTCTGAAATCCCACCGCTGCCACCA 1
AACTGGATTGTCTGTTTGT 1
AACTGGCAAGTTCAGGCATG 1
AACTGGCACACACAACC 1
AACTGGCACACACAACCT 1
END
my $seqs = join '|', map tr/ACGT//cdr, <$patterns>;
my $match = qr/^\w*($seqs)/;
/$match/ and print "$1\t$_" while <$fh>;
Outputs:
ATCCCACCGCTGCCACCA AACCCCATCCCACCGCTGCCACCA 1
ATCCCACCGCTGCCACCA AACTGGATTCTCTGAAATCCCACCGCTGCCACCA 1