学习Perl语言编程中……
介绍:
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函数相当于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";
}
[回复]
谢谢啊,牛人就是牛人啊
[回复]