如何从可能会/可能不会以单引号开头的字符串中提取单词

用户名

示例字符串:

'kernel-rt|kernel-alt|/kernel-' 'headers|xen|firmware|tools|python|utils'

cut -d' ' -f 1 string.txt 给我

'kernel-rt|kernel-alt|/kernel-'

但是,我们如何进一步从中获取“内核”呢?

杜迪男孩

假设您只需要第三个内核(粗体),而不要其他

'kernel-rt |内核-alt | /内核-'headers | xen |固件|工具| python | utils'

这是使用单个命令awk(标准Linux gawk提取它的方法

input="kernel-rt|kernel-alt|/kernel-' 'headers|xen|firmware|tools|python|utils"

echo $input|awk -F"|" '{split($3,a,"-");match(a[1],"[[:alnum:]]+",b);print b[0]}'

说明

-F"|"指定字段分隔符,|以便仅需要第三个字段

split($3,a,"-")将第三个字段分割为-,将左侧部分分配给a[1]

match(a[1],"[[:alnum:]]+",b)a[1]字母数字字符串的提取序列到b[0]

print b[0] 输出匹配的字符串。

如果kernel要从第二或第一字段中提取更改$3$2$1

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式用于子字符串捕获,但子字符串可能会或可能不会被转义的双引号绑定

如何从可能会被可选逗号分隔的字符串中提取数据?

如何从字符串中提取以单词开头的子字符串

从字符串中提取以特定字符开头的单词

如何在python中提取部分字符串(字符串长度可能会有所不同)

如何设置存储过程参数可能会或可能不会由用户传递值?

从字符串中提取引号中的单词

如何有效替换字符串中的字符,这可能会重复

如何:使用LINQ在数据中搜索包含许多可能类型的“单引号”的字符串

单引号字符串提取

使用sscanf(以“ |”分隔)从字符串中提取(可能为空)单词

从转换后的字符串中删除一个字符,该字符可能会出现在字符串中,也可能不会出现在字符串中

从公式的除数中提取单引号之间的字符串部分

如何提取单个单词以字母开头的字符串部分?

如何在正则表达式中提取以特定字符串开头的双引号字段

如何在 Bash 中提取引号之间的字符串

从字符串的开头和结尾删除单引号

如何从python中的字符串中提取最长的单词

如何从结构化字符串中提取单词?

如何从字符串中提取最后4个单词?

如何从字符串中提取文件中的单词

如何从特定单词后的字符串中提取

如何从R字符串中提取某些单词?

如何从字符串中提取我需要的单词?

如何从字符串中提取“单词形式的数字”

如何在C中提取单词后的字符串

可能会或可能不会返回值的函数的迭代器缩减模式

取消编组可能会或可能不会返回数组的JSON?

全局变量在每个视图上可能会或可能不会更改Laravel 5.2