正则表达式匹配字符串后跟除了某个字符之外的任何字符串

时间:2013-08-26 08:42:45

标签: regex regex-negation

Regex match every char but the following
这对我没有帮助。

我正在尝试匹配momentaneousVehicleSpeedKmph=后跟 gz 文件中除9之外的任何内容。

这些不匹配:

$zgrep "momentaneousVehicleSpeedKmph=\[\^9\]" file.gz
$zgrep "momentaneousVehicleSpeedKmph=\(\^9\)" file.gz
$zgrep "momentaneousVehicleSpeedKmph=\^\[9\]" file.gz
$zgrep "momentaneousVehicleSpeedKmph=\^\(9\)" file.gz

这样做:

$zgrep "momentaneousVehicleSpeedKmph=\(9\)" file.gz

我现在文件中的行包含momentaneousVehicleSpeedKmph=89

1 个答案:

答案 0 :(得分:1)

只需尝试

$zgrep "momentaneousVehicleSpeedKmph=[^9]" file.gz

如果您不想匹配单9

/编辑

如果您还需要2位数以上的速度,请尝试:

momentaneousVehicleSpeedKmph=([0-8]|[0-9]{2,})\b