我试图匹配1st []中的内容,但总是得到最后一个。表达中有什么不对? 顺便说一句,其他领域也是必需的,所以awk是首选。
echo "[a1 b1] [a2 b2]" | awk '{p=gensub(/.*\[(.*?)\].*/,"\\1",1); print p}'
想要" a1 b1",但得到" a2 b2"。谢谢!
答案 0 :(得分:1)
关注awk
可能对您有帮助。
echo "[a1 b1] [a2 b2]" | awk -F"[][]" '{print $2}'
说明: 只需将][
作为字段分隔符,然后打印第二个字段,因为字段将按照上述字段分隔符进行划分。