在gawk手册中,我发现了两个函数patsplit和split。
我想知道他们的区别是什么?
目的我明白split,但是目的是什么patsplit?
谢谢。
在 中split,您提供一个分隔符;而在你匹配分隔符之间的patsplit模式:
$ echo 'foo,bar' | awk '{n = split($0,a,/,/); for(i=1;i<=n;i++) print a[i]}'
foo
bar
Run Code Online (Sandbox Code Playgroud)
然而
$ echo 'foo,bar' | awk '{n = patsplit($0,a,/[^,]*/); for(i=1;i<=n;i++) print a[i]}'
foo
bar
Run Code Online (Sandbox Code Playgroud)