[oracle@jhoa perl2]$ cat a1.pl open(cpu,"<","/home/oracle/perl2/a1"); while (<cpu>) { chomp; if( /^model name.*: (.*$)/) { $cpu_number += 1; print "\$cpu_number is $cpu_number\n"; print "\$1 is $1\n"; $cpu_model="$1"; $cpu_model =~ s/\s+/ /g; } } [oracle@jhoa perl2]$ cat a1 model name : Intel(R) Core(TM) i3-2100 cpu @ 3.10GHz model name xxxxxxxxx $aaa="1234,5677,3333"; $aaa=~/\d+,(\d+),\d+/; #现在$1中就是5677 print $1."\n"; $bbb="2223,4241,45452"; $bbb=~/(\d+),\d+,\d+/; #现在$1中是2223 print $1; 根据()括号 判断 [oracle@jhoa perl2]$ cat a2.pl $aaa="1234,45452,24242"; $bbb=~/(\d+),(\d+)/; #现在$1中是2223 print $1,$2; [oracle@jhoa perl2]$ perl a2.pl 5677 222324242[oracle@jhoa perl2]$