将字串全变为小写, 然后赋值

将字串全变为小写, 然后赋值

有如下一段脚本:
#! /usr/bin/perl
$A="AbC oF CHina";
$B=print "\L$A";
print "$B\n";
目的是将$A全变为小写字母后再赋值给$B, 然后打印出$B的值. 但结果是输出如下信息:
abc of china1
看来是将赋值语句中的信息输出到屏幕上了, 再将print语句的结果1赋给了$B, 是这样吧? 那如何达成程序本来的目的呢? 请多赐教! 谢谢!!!
$a="ABc";
$b=lc $a;
print $b;

如果一定要用你的办法那么是

$a="ABc";
($b=$a)=~s/(.*)/\L$1/;
print $b;

呵呵 我来随便看下啊


















极品家丁
这个……
你知道 print 是干啥使的吗?
........................
($B= $A)=~ tr/A-Z/a-z/;

楼主基本功实在是不行啊。



QUOTE:
原帖由 zhuomingliang 于 2008-8-7 11:07 发表
$B= $A=~ tr/A-Z/a-z/;

楼主基本功实在是不行啊。

我看你的基本功也不咋地。
$B = lc $A;
是的, 刚学的

谢谢大家, 俺试试


QUOTE:
原帖由 flw 于 2008-8-7 11:10 发表

我看你的基本功也不咋地。
$B = lc $A;

我是做php 的,在php 里面是 strtolower.
#!/usr/bin/perl -w
use strict;

$a = "AbC oF CHina";
$b = "\L$a\n";# $b = sprintf "\L$a\n"
print $b;