awk支持量词 - 我想要[0-9] {6,6}

时间:2009-02-11 01:17:15

标签: regex awk

gawk似乎不匹配六位数字段 - 或使用{n,m}量词的n位数字

匹配[0-9] [0-9] [0-9] [0-9] [0-9] [0-9]确定。

似乎不支持\ d \ d \ d \ d \ d \ d。

我是否需要打开扩展的reg ex,或者只是不支持它。

TNX

2 个答案:

答案 0 :(得分:10)

您需要指定“--re-interval”(或“-W re-interval”)标记才能利用此行为。

echo 12345 | gawk --re-interval '/[0-9]{5}/{print}{}'
12345
echo 12345 | gawk --re-interval '/[0-9]{6}/{print}{}'
<no output>

答案 1 :(得分:3)

最低限度地扩展Pax的响应,--posix也会启用此行为。另外,你是正确的,gawk不支持字符类转义(如\d)但它支持[[:digit:]]语法。