LabVIEW用正则提取指定的字符

从 "Image00Min 00Sec.bmp" 提取 "00Min 00Sec" 的方法

利用 LabVIEW 的 "Match Regular Expression" 函数,通过构造精准的正则表达式,匹配并提取字符串中 "数字 + Min 数字 + Sec" 格式的内容,是最高效且灵活的方式,具体实现如下:

​

1. 正则表达式构造

针对 "Image00Min 00Sec.bmp" 的字符串结构,构造正则表达式:(\d+Min)\s(\d+Sec),各部分含义:

  • \d+:匹配 1 个或多个数字(对应 "00");

  • Min/Sec:匹配固定字符串 "Min""Sec";

  • \s:匹配 "Min" 和 "Sec" 之间的空格;

  • 括号():捕获子匹配项,分别提取 "00Min" 和 "00Sec"(也可调整为(\d+Min\s\d+Sec)直接捕获整体 "00Min 00Sec")。

2. 函数参数配置与提取

  • 输入字符串:接入待处理的 "Image00Min 00Sec.bmp";

  • multiline?:设为默认 FALSE(仅匹配字符串整体,无需按行匹配);

  • ignore case?:设为 FALSE(严格匹配 "Min""Sec" 的大小写,若需兼容小写可设为 TRUE);

  • offset:设为 0(从字符串开头开始搜索);

  • 提取结果:

    • 若正则表达式设为(\d+Min\s\d+Sec),"whole match" 输出直接返回 "00Min 00Sec";

    • 若正则表达式设为(\d+Min)\s(\d+Sec),可从 "submatch 1""submatch 2" 分别获取 "00Min""00Sec",再拼接为 "00Min 00Sec"。

3. 避坑与优化

  • 该函数不支持字符串中的空字符,需确保输入字符串无 null 字符,否则会报错;

  • 若遇到类似 "Image01Min 05Sec.bmp""Image99Min 59Sec.bmp" 等不同数字的场景,该正则表达式仍适用,无需修改,适配性强;

  • 避免低效正则写法:勿用(.|\s)*等易引发栈溢出的表达式,本例中直接精准匹配数字和固定字符即可;

  • 若仅需提取数字(如 "00""00"),可将正则表达式调整为(\d+)Min\s(\d+)Sec,从子匹配项获取纯数字后再拼接 "Min""Sec"。

总结

LabVIEW 中可通过 "Match Regular Expression" 函数结合正则表达式实现特定格式字符串的精准提取:针对 "数字 + 固定字符 + 空格 + 数字 + 固定字符" 的格式,利用\d+匹配数字、\s匹配空格、括号捕获目标子串的正则语法,能高效从复杂字符串中提取 "00Min 00Sec" 类目标内容,该方法适配性强,可灵活调整正则表达式以适配不同数字或格式变体,是 LabVIEW 中处理字符串模式提取的核心方法。

相关推荐
helesheng4 小时前
用NI的数据采集卡实现简单电子测试之7——用“硬件计数器+软件定时”的方法实现测频率 [原创cnblogs.com/helesheng]
labview·数据采集卡·虚拟仪器·usb-6009·测频率
LabVIEW开发1 天前
CTM-3 红外测温仪 + LabVIEW 温度怎么测?
算法·labview·测试·labview程序
LabVIEW开发1 天前
CMT 矢量网络分析仪 + LabVIEW 测S参数?
labview·测试·labview程序
LabVIEW开发2 天前
FlexRIO 在轨图像取舍:判决要跑在数据进内存之前
labview·fpga·labview功能·labview程序·flexrio
LabVIEW开发3 天前
PHD2000 注射泵通宵实验:LabVIEW 分段排程、堵针检测与断点续跑
串口通信·labview·仪器控制·实验室自动化
LabVIEW开发3 天前
用 LabVIEW 做故障注入:把起落架的「危险试验」变成可重复流程
串口通信·labview·仪器控制·labview功能·labview程序
LabVIEW开发4 天前
CLAD 例题精讲 2|数值与布尔:三个反直觉的地方
labview
LabVIEW开发5 天前
波音客机降噪验证系统:NI PXI 加 LabVIEW 怎么同时做到可扩展与低成本
labview·labview知识·labview功能·labview程序
LabVIEW开发5 天前
风洞 50 米/秒,LabVIEW 采哪几路信号
自动化测试·数据采集·labview
LabVIEW开发5 天前
沃尔沃动态驾驶模拟器:开放 HIL 平台加 LabVIEW 实时仿真,延迟是验收指标
labview·labview知识·labview功能·labview程序