gpt4 book ai didi

awk - 为什么我需要转义 awk 字符串常量中的括号?

转载 作者:行者123 更新时间:2023-12-01 23:44:52 25 4
gpt4 key购买 nike

考虑一个名为 test 的简单文件,其中包含以下文本:

abc(def)

使用 awk,如果我发现这行得通:

awk '$0 ~ "abc\(def\)"' test

但是如果括号没有被正确转义,它就不会工作:

awk '$0 ~ "abc(def)"' test

删除右括号,我得到了这个错误:

awk: line 1: regular expression compile failed (missing ')')
abc(def

"" 引用的字符串不是 awk 中的字符串常量吗?为什么 () 被视为字符串常量中的正则表达式特殊字符?

最佳答案

如果我正确理解了这个问题,那么答案是这样的:

awk -F ',' '{ print "(" $1, $2 ")" }'

您应该在 "" 之间键入 (。您可以使用 ""打印的任何特殊符号

关于awk - 为什么我需要转义 awk 字符串常量中的括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29887048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com