用/s 来匹配任意字符 默认情况下,点号(.)无法匹配换行符,这对大多数单行匹配的情况是合适的。 . 圆点用于匹配除换行符外的任何单个字符 + 意味着一个或多个相同的字符 .+ 匹配任意单个字符至少一次 .* 所有任意数量字符。与前一字符结合,可不出现字符 -? ##零个或一个减号 d+ #一个或多个数字 .? #零个或一个小数点 d* ##零个或多个数字 S 非空白 s 空白 f w 英文字母和数字的字符窜 W 非英文字母和数字的字符串 zabbix:/root/test# cat a1.pl my $str="abc"; if ($str =~ /(abc)+/){print "1111111 "}; zabbix:/root/test# perl a1.pl 1111111 +意味着一个或多个相同的字符 +: 一个或多个相同的前导字符(模式). 如:/de+f/ 匹配的是def,deef,deeeef等。 . 匹配除换行外的所有单个字符,通常与*合用 ? 匹配0个或1个该前一个字符 .* 所有任意数量字符。 与前一字符结合,可不出现字符。 .*俗称捡垃圾,匹配任意东西 ?表示它的前一个项目出现0次或者1次搜索 二者配合起来就是匹配任意东西了 x? 匹配 0 次或一次 x 字符串 x* 匹配 0 次或多次 x 字符串,但匹配可能的最少次数