Something like following code. I didn’t test it. Basically you need to use 
single line mode.

my $source=”your html”;

if ($source =~ m/.*(>gnl\\|.*?\n[AGCT\n]+)/s )
{
    my $extract=$1;
}

From: Fei Ni 
Sent: Thursday, January 13, 2011 12:20 PM
To: [email protected] 
Subject: [PerlChina] 求助一个正则表达式的问题

有一段文字:
    <html>
    <bodybgcolor=white>
    <pre>
    
SSOURCE=<ahref="http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Search&db=Nucleotide&doptcmdl=GenBank&term=AY013246";>AY013246</a>
    RELDATE=01-OCT-2002
    ANN_TSD=1-5,5178-5182
    ANN_LTR=6-208,4976-5177
    PROTEIN=
    
>gnl|TREP|TREP22Retrotransposon,LTR,Copia,"RLC_Inav_AY013246-1";completeelement(5bpTSD)
    CAACCTGTTAGACGAAATATCTCTTTGTATTATACGTGACTTGTATAACA
    CGTATAGGTTAGGATCTCTTTCTATCTCCTTGTGTTTAAACCGTAGATAA
    GATAGATTGATCTTAAACCTCTCCTCATGTATATCTCTTCGGCTTATGCT
    GCCTATATAAATATGCACGCGTCCCTGCTAAGAGCATACGCTTCCAGCCT
    TTCTCACATGGTATAAGAGCCACCTCTTCCATCGACATGTCATCTTCCTC
    CTCAAGCTCCACCATGGCTGCCTCCCTCGCTGCGCTAGGTCACACCATAA
我想只拿到  >gnl 后面一直到文件结尾的文字(红色部分,结尾的文字不固定,可能是AGCT里的任意一个),用正则表达式该怎么去写呢?
非常感谢大家的热心帮助!!

PS1:本人刚接触Perl,正在看小骆驼书,是新手。
PS2:我花了至少一天的时间来写这个正则表达式,但一直没成功。

-- 

Feiny

Achieving dream takes time and patience.Great careers don't happen overnight 
,and take years of hardwork.But every step along the road can get you closer to 
your dream.
-- 
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 [email protected]。
要取消订阅此网上论坛,请发送电子邮件至 [email protected]。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

-- 
您收到此邮件是因为您订阅了 Google 网上论坛的“PerlChina Mongers 讨论组”论坛。
要向此网上论坛发帖,请发送电子邮件至 [email protected]。
要取消订阅此网上论坛,请发送电子邮件至 [email protected]。
若有更多问题,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问此网上论坛。

回复