news 2026/5/1 5:42:22

41、深入探索 gawk:模式匹配、结构化命令与内置函数的应用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
41、深入探索 gawk:模式匹配、结构化命令与内置函数的应用

深入探索 gawk:模式匹配、结构化命令与内置函数的应用

1. 使用模式匹配过滤数据记录

gawk 程序支持多种类型的匹配模式来过滤数据记录,与 sed 编辑器类似。特殊的 BEGIN 和 END 关键字可在读取数据流前后执行语句,同时也能创建其他模式,在数据流中出现匹配数据时执行相应语句。

1.1 正则表达式

可以使用基本正则表达式(BRE)或扩展正则表达式(ERE)来过滤程序脚本应用的数据流行。正则表达式必须出现在其控制的程序脚本左花括号之前,示例如下:

$ gawk 'BEGIN{FS=","} /11/{print $1}' data1 data11 $

此例中,正则表达式/11/匹配数据字段中任意位置包含字符串 “11” 的记录。gawk 会将定义的正则表达式与记录中的所有数据字段(包括字段分隔符)进行匹配:

$ gawk 'BEGIN{FS=","} /,d/{print $1}' data1 data11 data21 data31 $

不过,这种匹配可能会导致问题,若要匹配特定数据字段的正则表达式,建议使用匹配运算符。

1.2 匹配运算符

匹配运算符(波浪号~)可将正则表达式限制在记录的特定数据字段上。使用时需指定匹配运算符、数据字段变量和要匹配的正则表达式,例如$1 ~ /^data/

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/19 1:29:11

老铁们今天带你们盘一个硬核项目——用MCGS7.7搞机械手分拣仿真。这玩意儿真不是盖的,光调试机械臂动作轨迹就让我掉了不少头发。不过别慌,咱们直接上实战

大小球分拣机械手搬运控制系统MCGS7.7模拟仿真程序先看核心控制逻辑,整个系统得判断球体大小。我在梯形图里搞了个光电传感器信号处理段: LD M0.0 // 光电传感器输入 AN C0 // 判断是否为小球 OUT Y0 // 启动小抓取模式 这里M0.0是传感器状态…

作者头像 李华
网站建设 2026/4/23 11:32:38

QuickLook即时预览终极指南:无需下载即可查看FTP/SFTP服务器文件

QuickLook即时预览终极指南:无需下载即可查看FTP/SFTP服务器文件 【免费下载链接】QuickLook 项目地址: https://gitcode.com/gh_mirrors/qui/QuickLook QuickLook作为一款革命性的文件预览工具,让远程服务器文件查看体验发生了质的飞跃。通过本…

作者头像 李华
网站建设 2026/4/28 20:07:23

正式发布CTyunOS V4.0!

日,以“智跃无界,开源致远”为主题的操作系统大会2025在北京举办。大会由开放原子开源欧拉(OpenAtom openEuler,简称“开源欧拉”或“openEuler”)社区,协同数十家产业伙伴共同举办,旨在汇聚全球…

作者头像 李华
网站建设 2026/4/20 8:36:33

DiT模型:Transformer架构如何重塑扩散模型的扩展边界

DiT模型:Transformer架构如何重塑扩散模型的扩展边界 【免费下载链接】DiT Official PyTorch Implementation of "Scalable Diffusion Models with Transformers" 项目地址: https://gitcode.com/GitHub_Trending/di/DiT 在图像生成领域&#xff0…

作者头像 李华
网站建设 2026/4/20 4:26:08

Blender版本管理终极指南:告别混乱的完整解决方案

Blender版本管理终极指南:告别混乱的完整解决方案 【免费下载链接】Blender-Launcher Standalone client for managing official builds of Blender 3D 项目地址: https://gitcode.com/gh_mirrors/bl/Blender-Launcher 还在为Blender多版本切换而烦恼吗&…

作者头像 李华
网站建设 2026/4/27 10:32:39

构建智能数字人:Live2D虚拟角色完整实现指南

构建智能数字人:Live2D虚拟角色完整实现指南 【免费下载链接】awesome-digital-human-live2d Awesome Digital Human 项目地址: https://gitcode.com/GitHub_Trending/aw/awesome-digital-human-live2d 在AI技术快速发展的今天,打造一个能够自然交…

作者头像 李华