在 GNU Recutils手册中,写道
返回最长的匹配;这适用于整个正则表达式和(受此约束)组内的子表达式。
但是,当我运行以下命令时(在 macOS 上,通过自制软件安装了 recutils)
echo "Author: Knuth, Donald E." | recfmt "{{Author ~ '^([^,]+).*'}}"
结果我得到了布尔值1
。
我认为正则表达式是正确的,因为以下命令正确返回Knuth
.
echo "Knuth, Donald E." | sed -E "s/^([^,]+).*/\1/"
我误解了手册还是这是一个错误?如果是这样,是否有另一种方法来获得匹配而不是布尔值?
更新。我在 Debian 虚拟机上得到了相同的行为。