我有以下格式的数据:
.......{INFO1}.....[INFO2]....
因为awk
拿起INFO1
和INFO2
零件应该真的很简单,但是我真的很努力。
我已经设法[INFO2]
通过使用获得了部分,awk -F'[][]' '{ print $2 }'
但INFO1
正义将不适合我。
如何指定{}
为分隔符?
只需使用[][{}]
定义您可以使用这些:[
,]
,{
或}
作为字段分隔
awk -F"[][{}]" '{print ...}' file
通常,您说-F"[PATTERNS]"
。
$ echo ".......{INFO1}.....[INFO2]...." | awk -F"[][{}]" '{print $2}'
INFO1
$ echo ".......{INFO1}.....[INFO2]...." | awk -F"[][{}]" '{print $4}'
INFO2
假设我有一个类似“a B C(123-456-789)”的字符串,我想知道从中检索“123-456-789”的最佳方法是什么。
本文向大家介绍awk RS-记录分隔符,包括了awk RS-记录分隔符的使用技巧和注意事项,需要的朋友参考一下 示例 由awk用于将输入拆分为多个记录。例如: 产生: 默认情况下,记录分隔符是换行符。 同样:echo“ abc | de f” | awk'BEGIN {RS =“ |”} {print $2}' 产生:
问题内容: 我有一个像 我想把它分成那些字符串 如果我简单地打电话给我,那么在修剪之后我会得到不同的结果,因为在某些字符串中,例如,仍然有一个逗号。但我不想放在方括号中。有解决这个问题的优雅方法吗? 问题答案: 假设和没有嵌套和未转义。您可以使用以下方式进行拆分: 正则演示 如果逗号后面没有非圆括号和,则将匹配逗号,从而忽略和中的逗号。
我有一个长字符串,只要逗号不在方括号或圆括号内,我想通过用逗号将其拆分来将其设置为数组。我已经尝试了一些变化,但没有得到我想要的。。。 例1: 例2:
本文向大家介绍awk ORS-输出记录分隔符,包括了awk ORS-输出记录分隔符的使用技巧和注意事项,需要的朋友参考一下 示例 由awk用于分隔记录,并在每个print语句的末尾输出。例如: 产生: 默认值为\n(换行符)。
本文向大家介绍awk OFS-输出字段分隔符,包括了awk OFS-输出字段分隔符的使用技巧和注意事项,需要的朋友参考一下 示例 由awk用来分隔print语句输出的字段。例如: 产生: 默认值为,由单个空格组成的字符串。