我试图在awk中使用花括号匹配固定数量的数字但我得不到结果.
# This outputs nothing echo "123" | awk '/^[0-9]{3}$/ {print $1;}' # This outputs 123 echo "123" | awk '/^[0-9]+$/ {print $1;}'
我是否需要做一些特定的事情来使用花括号?
解决方法
Mac OS X awk(BSD awk)使用显示的第一个命令:
$echo "123" | /usr/bin/awk '/^[0-9]{3}$/ {print $1;}' 123 $
GNU awk没有.添加反斜杠对GNU awk没有帮助.使用选项–re-interval确实如此,使用–posix也是如此.
$echo "123" | /usr/gnu/bin/awk --re-interval '/^[0-9]{3}$/ {print $1;}' 123 $echo "123" | /usr/gnu/bin/awk --posix '/^[0-9]{3}$/ {print $1;}' 123 $
(我不确定1996年的1.3.3 mawk来自哪里,但现在可能是时候为你的机器获得awk的更新版本.)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。