$string =~ s/\t+/' ' x (length($&) * 8 - length($`) % 8)/e 这个是perl语言 什么意思啊

刚学的perl$string=~s/\t+/''x(length($&)*8-length($`)%8)/e这是什么意思啊... 刚学的perl $string =~ s/\t+/' ' x (length($&) * 8 - length($`) % 8)/e 这是什么意思啊 展开
 我来答
计名pS
2011-10-21 · TA获得超过3649个赞
知道大有可为答主
回答量:4189
采纳率:0%
帮助的人:2201万
展开全部
--这句话的意思是说:吧字符串里的制表符 \t 换为等长度的空格

因为每种机器规定的tab长度不等,有相当于4个空格的,有是8个的~

--你把它改成星号,执行一次就明白了

$string =~ s/\t+/"*" x (length($&) * 8 - length($`) % 8)/e;
rain_bow_1
2011-10-21
知道答主
回答量:17
采纳率:0%
帮助的人:7.7万
展开全部
正则表达式默认的是修改$_变量
$string =~是绑定$string为被修改的变量, 后面的表达式原型是 s/str1/str2/;意思是str2替换str1;
首先看str1,\t代表制表符,也就是tab输入的空白,+代表重复1到n次。也就是说,str1匹配至少有一个制表符组成的字符串。
str2~我也水平有限~实在是说不清了。最好能看看程序其他部分。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式