string - 如何转义 AWK 中的所有非字母数字字符?
问题描述
我继承了一个与 .csv 文件匹配的非常大的 AWK 脚本,但我发现它与某些字母数字字符不匹配,尤其是+ ( )
.
虽然我意识到这在 sed 中很容易:
sed 's/\([^A-z0-9]\)/\\\1/g'
我似乎找不到在 AWK 中以相同方式调用匹配字符的方法。
例如,示例输入是:
select.awk 'Patient data +(B/U)'
我想转义非字母数字字符,并将该行变成:
Patient\ data\ \+\(B\/U\)
我看到有些人也传递了非常晦涩的非字母数字字符,我想转义。
解决方案
gsub(/[^[:alnum:]]/, "\\\\&", arg)
推荐阅读
- r - 将 plot_ly 表从 .JSON 导入到 R
- javascript - toggleClass() 不是函数,但没有它手风琴不起作用
- java - 如何打印最后带有数字的语句,但将数字从右到左设置为一定长度?
- react-native - React-navigation 5 - Drawer Navigator:更改 Drawer 菜单图标的样式
- javascript - 显示的列与列定义的顺序不同 AG Grid React
- bash - Bash:在 X 列中保留第一行重复值
- powerbi - Power BI - 模型视图 - 查询已存在
- google-cloud-dataflow - How to implement groupby(column1,column2) in apache beam
- opengl - OpenGL实现在不同平台上是否完全不同?
- django - django admin内联字段选项根据主表单字段值过滤