qyx01 / 服务器管理 / http://developer.51cto.com/art/201007/2...

分享

   

http://developer.51cto.com/art/201007/211543....

2013-02-19  qyx01

Perl字符串基本操作详解(1)

2010-07-14 12:57 dreamnear csdn.net 我要评论(0) 字号:T | T
一键收藏,随时查看,分享好友!

本文向大家介绍一下Perl字符串的一些操作,Perl字符串在Perl语言中经常会用的,掌握它的一些基本操作对你的学习和使用都有好处。

AD:2013大数据全球技术峰会低价抢票中

本文和大家重点讨论一下Perl字符串的一些基本操作,比如Perl字符串数组元素赋值:@tmp=qw(aaabbbkkk9000);相当于@tmp=(“aaa”,“bbb”,“kkk”,“9000)。至于其他操作请看本文详细介绍。

Perl字符串操作

Perl字符串数组元素赋值:@tmp=qw(aaabbbkkk9000);相当于@tmp=(“aaa”,“bbb”,“kkk”,“9000);

◆Perl字符串比较,绝不能用==,要用eq
[macg@localhostPerltest]$vitip.pl

#!/usr/bin/Perl
print"input:";
while(chomp($input=<>)){
print"yourinputis$input\n";
if($input=="q"){print"chooseq\n";last;}
elsif($input=='n'){print"inputis$input\n";next;}
else{print"inputok,tryagain\n";}
print"input:";
}
[macg@localhostPerltest]$./tip.pl
input:x
yourinputisx
chooseq


◆Perl字符串用==是最常犯的错误

即使是整形,也尽量用eq,少用==
while(chomp($input=<STDIN>))
{
for($i=1,$found=0;$i<=$int_num;$i++)
{
if($input==$i){$found=1;}
else
Doyouwanttochangeeth0:2'sipaddress?回车

Argument""isn'tnumericinnumericeq(==)at./address.plline77,<STDIN>line2.
对整形变量$input==$i,如果$input是回车,并不走else,而是报错

正确的做法是:不论整形Perl字符串,都用eq
while(chomp($input=<STDIN>))
{
for($i=1,$found=0;$i<=$int_num;$i++)
{
if($inputeq$i){$found=1;}
}
whichinterfaceyouwanttoconfig?choiceanumber1234q:1
Doyouwanttochangeeth0'sipaddress?


◆Perl字符串几种连接运算符

运算符,常用于输出
print"純金",$v1;
print$str,"\n\n";

.运算符和,类似也是Perl字符串相加但,通常只用于print而.可以用在任何Perl字符串相加的地方
print'12345大家來跳舞'."helloworld";
結果變成:
12345大家來跳舞helloworld

x运算符号
print"OK"x4;
結果變成:
OKOKOKOK


◆为什么Perl字符串相加只能用.不能用+

因为可能+就是真加了(数字相加),而不是Perl字符串合并
$v1=99;
$v2='121';

print$v1+$v2;
$v1=99;
$v2='121';

print$v2.$v1;
220
12199

◆Perl字符串的连接可以连接整形和字符形,整形也被当作字符型处理,没有printf里的%d问题
$min=1;

$date="date"."0".$min;
print$date,"\n";

[root@ntrackermac]#./tip.pl
date01


uc轉成大寫,lc轉成小寫
$str="abCD99e";
$str=uc($str);
$str="abCD99e";
$str=lc($str);
[macg@localhostPerltest]$./tip.pl
ABCD99E
[macg@localhostPerltest]$./tip.pl
abcd99e                   

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多

    ×
    ×

    ¥.00

    微信或支付宝扫码支付:

    开通即同意《个图VIP服务协议》

    全部>>