$line =~ /\-?(?:\d+\.?\d*|\.\d+)/g 在perl中是什么意思
$line =~ /\-?(?:\d+\.?\d*|\.\d+)/g 在perl中是什么意思
  日期:2019-07-22 19:59:21 人气:2
  
  这个有点复杂
\-?  表示匹配正负数
?:表示以|为分隔,匹配\d+\.?\d*  或 \.\d+   
\d+\.?\d* 表示匹配整数或小数
\.\d+   表示匹配没有整数但有小数点的数
g 表示全局匹配
?:表示括号只是起分隔作用,不将括号中匹配的内容存入内存中  
因为如果不加?:的话,括号内匹配的内容会放入$1,$2...这些变量中
$line =~/[\-\.
      