比如我要找三个放到尖括号<>中的内容,这样:
gawk '{ match($0,/.*<(.+)>.*<(.+)>.*<(.+)>/, a);print a[1] a[2] a[3]}'
asdfsdf<1111>asdfdf<222><333>
1111222333
aaaaaaaaaaaaaaaaaaaafff
ffff
没有找到打印空字符,再判断一下就可以了
比如匹配必需在行尾:
gawk '{ if (match($0,/.*<(.+)>$/, a)) print a[1]}'
aaaa
tom
aaaa
aaaaJack
tom
