【发布时间】:2012-10-01 04:21:59
【问题描述】:
我有 3 个使用 gsub 的例子:
1.
echo -e "A A\nB B\nC C" | awk '{gsub($(!/B/),"",$1); print $1 "\t" $2}'
A
B B
C
2.
$ echo -e "A A\nB B\nC C" | awk '{gsub($(!/B/),"",$2); print $1 "\t" $2}'
A
B B
C
3.
$ echo -e "A A\nB B\nC C" | awk '{gsub($(!/B/),"",$0); print $1 "\t" $2}'
.
为什么在 awk 的 3 示例中没有打印任何内容? awk 不应该打印吗?:
B B
请解释 3 个例子。
感谢您的帮助。
【问题讨论】:
-
我不明白在 gsub 正则表达式中使用否定,你希望它做什么,你有没有参考,或者你只是想弄清楚如何拆分在
/[^B]/? -
@tripleee,为什么我不能使用 gsub 正则表达式否定
$(!/B/)?你能解释一下吗? -
不,你能解释一下你认为这意味着什么吗?你想完成什么?
-
我只是想知道你是否可以使用这种形式的否定
$(!/B/)?如果不能,为什么? -
如果它按照你的想法做,继续;但也许可以解释一下它应该对我们其他人做什么。在我看来,您正在尝试完成一些可能无法按您期望的方式工作的事情,但如果您不告诉我们您的期望,我们将无法帮助您解决这个问题。韦尔普,您的电话。