我试图找到0-9中第一次出现的数字的索引。
让我们说:
$myString = "ABDFSASF9fjdkasljfdkl1"
我想找到9的位置。
我试过这个:
print index($myString,[0-9]);
和
print index($myString,\d);
答案 0 :(得分:9)
使用正则表达式Positional Information:
use strict;
use warnings;
my $myString = "ABDFSASF9fjdkasljfdkl1";
if ($myString =~ /\d/) {
print $-[0];
}
输出:
8
答案 1 :(得分:0)
您甚至可以尝试以下perl代码:
use strict;
use warnings;
my $String = "ABDFSASF9fjdkasljfdkl11";
if($String =~ /(\d)/)
{
print "Prematch string of first number $1 is $`\n";
print "Index of first number $1 is " . length($`);
}
答案 2 :(得分:0)
你可以试试这个:
perl -e '$string="ABDFSASF9fjdkasljfdkl1";@array=split(//,$string);for $i (0..$#array) {if($array[$i]=~/\d/){print $i;last;}}'