我有这个正则表达式:

if($string =~ m/^(Clinton|[^Bush]|Reagan)/i)
  {print "$string\n"};

我想和克林顿,里根打交道,但不和布什打交道。

没用

最佳答案

示范文本:



只是省略布什比赛:

$ perl -ne 'print if /^(Clinton|Reagan)/' textfile
Clinton said
Reagan forgot

或者,如果您确实要指定:
$ perl -ne 'print if /^(?!Bush)(Clinton|Reagan)/' textfile
Clinton said
Reagan forgot

10-06 01:21