Perl split函数
介绍:
split /PATTERN/, EXPR
split /PATTERN/
split
Perl split函数扫描字符串中EXPR给出的分隔符,并把该字符串劈成一个子字符串列表。简单地意思就是把字符串,按照/PATTERN/里的分隔符来分隔,返回一个数组。/PATTERN/可以是分隔符(逗号空格等),也可以是正则表达式。
如果后面指定LIMIT,如:
split /PATTERN/, EXPR, LIMIT
LIMIT参数只分裂字符串的一部分。Perl split函数相当于PHP的explode函数。
例子Example
例如试试下面的例子:
#!/usr/bin/perl -w
@fields = split(/:/, "1:2:3:4:5");
print "Field values are: @fields\n";
#It will produce following result:
#Field values are: 1 2 3 4 5
Perl split函数是非常常用的一个函数。
一个更加酷的例子如下:把字符串分割为独立的字符。
#!/usr/bin/perl -w
print join ':', split / */, 'hi there';
#result:
#h:i:t:h:e:r:e
Perl split函数完。
查看完整版本: Perl split函数
阿门,弱弱飘过,打打酱油 ~ 看不懂啊看不懂 ~ 看到这句就熟悉了:Perl split函数相当于PHP的explode函数。 :) Perl,没接触过,实在是看不懂 恩,这个在Perl字符串操作中经常会用到,很有用! [得意] perl是一门很神奇的语言~ 是啊。非常常用。 你好博主,这两个网站是预测跨膜区的,只能一条一条的输入啊,可是我有一个1万条序列的fasta该咋办啊,反正不能一条一条的输入预测啊。这个问题纠结啊,网上也没有答案,多谢博主 SOSUI: Submit a protein sequence : http://bp.nuap.nagoya-u.ac.jp/sosui/sosui_submit.html http://sosui.proteome.bio.tuat.ac.jp/sosuiframe0.html HMMTOP http://www.enzim.hu/hmmtop/html/submit.html 看了看, HMMTOP是一个软件啊. 你下载下来用, 应该就可以批量的吧.. 或是emboss的tmap 有没有可能用perl或者其他语言,编一个程序,实现向远方的服务器自动的发送一条序列信息,然后自动保存这个结果。如此循环完成这一万条呢?想法比较恐怖……因为涉及自动填写表单信息和,自动保存结果…… 你会就可以啊。 只是每一次要有间隔时间,不然很容易就给封掉了。。 perl支持时间吗?计时,看来我只能试试了 柳城兄,您好。 最近小弟碰到一个问题。 我需要用一个软件(用c写的,编译好的)跑几千个文本,由于这个软件在每次只能运行一个文本,因此想用perl写一个脚本完成。 在该软件的单次运行中,需要手动输入一些参数。 我想用管道命令打开该程序,再用perl脚本向该程序输入参数,然后循环。但困难是如何控制那个软件和如何向那个软件输入参数? 目前当我用管道一打开那个软件,根本就停不下来。 小弟学perl才2个月,请您帮忙指点迷津。 不知道呢。呵。。 看的不是太明白。貌似不是perl的问题,是C的问题。你改改C,从命令行调用文件就可以了吧? 希望有时间能写点初级教程 我在网上看了一段程序,为什么返回不了结果呢?网址是http://www.nokiamobile.org.cn/23_100111_824717.html 我的程序如下: #!/usr/bin/perl use LWP::UserAgent; use HTTP::Request::Common; $protein="MSSSTPFDPYALSEHDEERPQNVQSKSRTAELQAEIDDTVGIMRDNINKVAERGERLTSI"; my $agent=LWP::UserAgent->new; my $SUSUI_URL="http://sosui.proteome.bio.tuat.ac.jp/cgi-bin/adv_sosui.cgi"; my $req = HTTP::Request->new(POST => "$SUSUI_URL"); $req->content(query_seq=>"$protein"); my $res = $agent->request($req); # Check the outcome of the response if ($res->is_success) { print $res->content; } else { print "Bad luck this time\n"; } my $SUSUI_URL="http://sosui.proteome.bio.tuat.ac.jp/cgi-bin/adv_sosui.cgi"; 我把这句改为my $SUSUI_URL="http://www.enzim.hu/hmmtop/server/hmmtop.cgi"; 结果HMMTOP的也不返回正确结果,为什么呢?牛人
#!/usr/bin/perl
use LWP::UserAgent;
my $browser = LWP::UserAgent->new;
$protein = "MSSSTPFDPYALSEHDEERPQNVQSKSRTAELQAEIDDTVGIMRDNINKVAERGERLTSI";
my $SUSUI_URL = "http://www.enzim.hu/hmmtop/server/hmmtop.cgi";
my $response = $browser->post( $SUSUI_URL, [ 'if' => $protein, ] );
if ($response->is_success) {
print $response->content;
} else {
print "Bad luck this time\n";
}
谢谢啊,牛人就是牛人啊