h****g 发帖数: 772 | 1 不会perl,
读一个小程序
有这两句
$k =~ s/^[^=]*=//;
$k =~ s@\_@@g;
我理解第一句是把从开头到*=都删除,除非以=开头
第二句是把\_删除。
那么它对_有作用吗?
能否等效于python
t = re.sub("^[^=]*=","",t);
t = re.sub(r"\_","",t);
t2:
#!/usr/bin/perl
$s=$ARGV[0];
printf("%s %s \n",$s,&test($s));
sub test {
my($t) = @_;
$t =~ s@\_@@g;
return $t;
}
$ ./t2 _cde
_cde _cde
$ ./t2 \_cde
_cde cde |
e*******o 发帖数: 4654 | 2 1. 是到=号都删除。 星号是和[^=]一起的,
2. 是把_号都删除。 s@\_@@g <=> s@_@@/g <=> s/_//g <=> s{}//g
任何punctuation character都可以。我一般用///. 除非,要match的字符串有/。
When a backslash precedes a nonalphanumeric character in a Perl pattern, it
always makes that next character a literal.
http://docstore.mik.ua/orelly/perl4/prog/ch05_03.htm
你的代码
$s=$ARGV[0]; <=> $s = shift;
my($t) = @_; $t =~ s@\_@@g; return $t; <=> shift =~/_//gr。
你要找learning perl来看。 |
e*******o 发帖数: 4654 | 3 建议你把programming perl 买来,Perl 的经典参考书。Perl 辉煌不在,amazon 上
3rd 的加邮费才4块钱。 |
h****g 发帖数: 772 | 4 谢谢回复,不过刚才发现mitbbs 吃掉了我两个反斜杠,一个在原始程序中,一个在我
的程序中
不,是三个,第三个在标题里
现在这样那是什么意思呢?
it
【在 e*******o 的大作中提到】 : 1. 是到=号都删除。 星号是和[^=]一起的, : 2. 是把_号都删除。 s@\_@@g <=> s@_@@/g <=> s/_//g <=> s{}//g : 任何punctuation character都可以。我一般用///. 除非,要match的字符串有/。 : When a backslash precedes a nonalphanumeric character in a Perl pattern, it : always makes that next character a literal. : http://docstore.mik.ua/orelly/perl4/prog/ch05_03.htm : 你的代码 : $s=$ARGV[0]; <=> $s = shift; : my($t) = @_; $t =~ s@\_@@g; return $t; <=> shift =~/_//gr。 : 你要找learning perl来看。
|
l**********n 发帖数: 8443 | 5 这种语言学了有啥用?
【在 h****g 的大作中提到】 : 谢谢回复,不过刚才发现mitbbs 吃掉了我两个反斜杠,一个在原始程序中,一个在我 : 的程序中 : 不,是三个,第三个在标题里 : 现在这样那是什么意思呢? : : it
|
e*******o 发帖数: 4654 | 6 \ 匹配 上面的那个链接写的很清楚了。
【在 h****g 的大作中提到】 : 谢谢回复,不过刚才发现mitbbs 吃掉了我两个反斜杠,一个在原始程序中,一个在我 : 的程序中 : 不,是三个,第三个在标题里 : 现在这样那是什么意思呢? : : it
|
e*******o 发帖数: 4654 | 7 找工作容易,基本会点Perl都可以找个工作。
【在 l**********n 的大作中提到】 : 这种语言学了有啥用?
|
l**********n 发帖数: 8443 | 8 工作机会多吗?我印象中paid还可以
【在 e*******o 的大作中提到】 : 找工作容易,基本会点Perl都可以找个工作。
|
e*******o 发帖数: 4654 | 9 工作机会相对找工作的人比较多。要不我这种生物的,怎么能找到工作。
paid 多少跟语言关系不大。
【在 l**********n 的大作中提到】 : 工作机会多吗?我印象中paid还可以
|