LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1348|回复: 4

perl中如何截取数字

[复制链接]
发表于 2004-9-10 11:15:12 | 显示全部楼层 |阅读模式
有这样一段字符,以数字开头,后面跟着随机的英文字母,如:1234abcxyz

我想截取前面的数字,放入某个变量中,我写了这样的代码,但是无效:
[PHP]
#!/usr/bin/perl
$Str='123abc';
$n=substr($Str, 0, index($Str, "[^0-9]"));
[/PHP]

应该怎么写呢?
发表于 2004-9-10 23:55:39 | 显示全部楼层
[php]
$str="12123asdfsdf";
$str=~s/[a-z]+$//;
$n=$str;
print $n;
[/php]
 楼主| 发表于 2004-9-12 00:51:56 | 显示全部楼层
先谢谢楼上的。

不过如果$str中包含有回车和其他数字该怎么办呢?

能不能把从第一个非数字开始的字符全剔除。

如$str="123abcd\nabcd456"; 要求得到123
发表于 2004-9-12 15:30:32 | 显示全部楼层
my $str = "123abcd\nabcd456";
my @arr = split(/[a-z]/,$str,2);
$str = $arr[0];
print $str;
print "\n";
发表于 2004-9-20 23:36:24 | 显示全部楼层
my $str = "123abcd\nabcd456";
$str =~ /(^\d+).*/;
print $1;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表