当前位置:
文档之家› labview2014字符串和文件 IO第5讲
labview2014字符串和文件 IO第5讲
寻找和替换所有匹配
打开了“正则表达式”选 项
所有匹配都替换为 “NULL”
[a-zA-Z]*at ——“at”之前有0或多个字母
特殊 字符
解释
.
* +
匹配任何单个字符,换行除外。例如:.t匹配at、bt、2t、_t,等等
标记可以出现0次或多次的模式。例如be*将e标记为可出现0次或多次的模式,因此 be*匹配believe中的be、beep中的bee和bat中的b 标记出现1次或多次的模式。例如 be+可以匹配believe中的be、 beep中的bee,但不 能匹配bat 标记出现0次或1次的模式。be?可以匹配believe中的be、 bee中的be、 beep中的be, 以及bat中的b 标记模式的一部分,可以出现任意次数。例如be{2} 匹配至少跟随了两个e的b字符, be{0,3}匹配至多跟随了三个e的b字符,be{2,3}匹配至少跟随了两个e,至多跟随了三 个e的b字符 建立字符类,可以匹配某个字符集中的任何一个字符。例如[abc123]匹配字符a、b、 c、1、 2或3中的任何一个 指定字符范围。例如 [a-z]匹配任何小写字母,[a-zA-Z0-9]匹配任何小写、大写或数字 字符。可以使用字符类匹配任何不在某一字符集中的字符,将^号添加到字符类的开 始。例如[^0-9]匹配任何非数字字符,[^a-zA-Z0-9]匹配任何非字母非数字字符 表示部分匹配,使用竖线|分割可能的匹配,例如(cat|dog) catcher匹配cat catcher或 dog catcher。也可使用多个部分匹配,例如(a|the) (cat|dog)匹配a cat、a dog、the cat或the dog 表明多个可能的匹配,例如cat|dog匹配catcher的cat或者big dog中的dog
①
②
③
命令
串口/GPIB接口
执行结果
1. 字符串 • 字符串相关控件
控件选板,新式->字符串与路径子选板和列表与表格子选 板
• 字符串常量
函数选板,编程->字符串
输入任意字符串
其他预定义 字符串常量
1. 字符串 1. 字符串输入控件和输出显示控件
运行程序
2. 组合框控件
组合框输入控件, 未定义任何项
功能:将DDT类型信号写入LabVIEW自定义的测量文件,
文件可以是文本文件(.lvm),或者二进制文件(.tdms 和.tdm)
Express VI,通过对话框配置 参数和功能 选择文本还是二进 制格式
二维标量数组 - 行是通道
2. 文件I/O 4. 读取测量文件
(Read From Measurement File)
1个汉字占2个字节 (byte)
2. 连接字符串(Concatenate Strings) 功能:按顺序连接所有输入字符串 成为一个新字符串;输入可以为1维
字符串数组
1. 字符串
3. 截取字符串(String Subset) 功能:从输入字符串的“偏移量” 位置开始,取出所要长度的子字符串
字符串中字符的索引 从0开始!! 未接“长度”参数表示到串 尾 注意中文的处理
函数选板,编程->文件I/O子选板
简单文件I/O函数
高级文件I/O函数 (部分) 路径处理
配置文件(.ini)I/O 函数,保存应用程序 参数配置
文件路径控件和常量
控件选板,新式-> 字符串与路径 函数选板,编程-> 文件I/O->文件常量
2. 文件I/O
电子表格文件?
按表格形式组织的文本文件,行间采用换行 分隔,行内数据采用指定符号分隔
1. 字符串
7. 匹配正则表达式(Match Regular Expression)
功能:从“输入字符串”的“偏移量”位置开始查找“正则 表达式”,找到后,按其所在位置将“输入字符串”分为 三段
从一段文本中提取Email地 址(此处给出ቤተ መጻሕፍቲ ባይዱ种不同的 正则表达式方案)
1. 字符串 8. 格式化日期/时间字符串 (Format Date/Time String)
功能:从文本(.lvm)或者二进制(.tdms和.tdm)格式的
1. 字符串
常用‘\’代码字符
代码 \b \f \n \r LabVIEW中含义 退格符 进格符 换行符 回车符 代码 \t \s \\ %% LabVIEW中含义 制表符 空格符 反斜线:“\” 百分比符号
1. 字符串 典型字符串操作函数
1. 字符串长度(String Length) 功能:返回字符串的长度(以字节为单位)
LabVIEW编程及虚拟仪器设计
第5讲——字符串和文件 I/O
上一讲内容回顾
1. 图形显示
波形图(Graph,新替换旧),波形图表(Chart,新 接续在旧后), XY图,强度图(用颜色表示第3维数 据)
2. Express VI(快速VI)
通过对话框配置参数,输入或输出DDT类型(近似为 波形数组)
以上两个函数,弹出快捷 菜单,选择编辑格式字符 串选项 通过对话框配置格式字符 串,降低难度
2. 文件I/O
• 计算机文件供计算机程序所使用,是存储信息的 容器,且经常基于持久存储机制如磁盘驱动器;
文件的持久存储指的是当前运行的程序结束后,文件仍可 被其他程序所使用
• 操作系统中,文件组织为字节序列 • 文本文件(text file)包含按行组织的由字符组成 的可读文本,且在最后一行后包含文件结束符 (end-of-file)
文本文件采用文本编辑 程序(如记事本)打开
2. 文件I/O
• 二进制文件(binary file)包含任意内容,如可执 行程序,图像,声音,压缩过的其他文件……
图片文件,JPG格式
二进制文件采用十六进制编辑程序(如UltraEdit)打开
使用文本编辑程序打开二进制文件时出现“乱 码”,即强制按字符显示实际上不是字符的二 进制数据
② 在某一项上弹出快捷菜单
1. 字符串 字符串的显示方式
字符串输入控件、输出显示控件,通过快捷菜单配 置为如下显示方式之一: a) 正常显示(Normal Display)- 显示可打印字符 b) ‘\’代码显示( ‘\’ Codes Display)- 采用反斜 杠代码显示正常方式下不可显示的字符如空格, 制表符,等等;多用于程序调试、向仪器设备 传输数据 c) 密码显示(Password Display)- 以*号显示所有字 符,包括空白 d) 十六进制显示(Hex Display)- 采用十六进制显 示所有字符,用于程序调试
6. 搜索替换字符串(Search and Replace String)
功能:查找并替换指定字符串
快捷菜单可打开“正则表达式”选项
1. 字符串 正则表达式(Regular Expression):使用特殊
语法的表达式,其中包含查找复杂字符串所依照 的规则或模式;类似文件名搜索时使用的通配符* 和?,但更复杂和强大
输入和输出控件底色不同
组合框出现项列表
输出所选项对应值 (字符串) 定义多个“项-值” 对
1. 字符串 3. 表格
表格是字符串组成的2维数组
列首 列首的显示通过快捷菜单 的显示项子菜单设置
“列首字符串”属性
采用属性节点指定列首
1. 字符串 3. 表格 将表格放在循环内?
1D 2D 每次循环送入表格的二维数组 仅包含新数据行,新数据行替 换旧数据行
3. 局部变量和全局变量
局部变量:打破输入和输出显示控件的读写限制 全局变量:在VI文件之间共享数据 注意并行运行程序段之间的竞态条件
4. 属性节点,通过编程动态读取/设置前面板控件属性
本讲内容
1. 字符串 2. 文件I/O
1. 字符串 字符串是ASCII字符(和其他字符)的集合, 用于文本的屏幕显示,仪器控制时的命令 与结果传送和文本文件操作
符串,并写入到文件中;若“文件路径”参数未接入,则 弹出文件对话框;“分隔符”参数指定行内分隔符,默认 为制表符\t
将2维整数数组写入电子表格文件(对应前例)
采用默认的制表符“\t”作为分隔符
指定使用逗号“,”作为分隔符
2. 文件I/O 2. 读取电子表格文件
(Read From Spreadsheet File) 功能:从电子表格形式的文本文件中读取数据并转化为1维
2. 文件I/O 文件I/O操作步骤,两种编程思路
创建/打开文件
读写文件
创建/打开, 读写,关闭文件
② 使用简单函数/VI,内含文件I/O 的各个步骤,使用简单,灵活性差 (高层函数)
关闭文件
① 使用高级函数/VI,由编程者管理各 个步骤,使用稍复杂,但灵活,效率高 (底层函数)
2. 文件I/O
或2维数组,数组元素类型为整型、浮点型或字符串型
多态VI:具有相似功能和不同 参数类型的VI的集合 读取1.dat,默认为采用制表符“\t”分隔行内数据
多态VI选择器 在列表中选择具体使 用哪个函数/VI实例
2. 文件I/O 3. 写入测量文件
(Write To Measurement File)
功能:以指定的格式显示时间字符串 9. 扫描字符串 (Scan From String) 功能:扫描输入字符串,提取表示数据的子串并按 照给定格式进行转换
提取和转化浮点数
可能为电压表返回的电压查 询结果(伏特,直流,5.36)
1. 字符串
10. 格式化写入字符串 (Format Into String) 功能:将多种数据转化为字符串
?
{}
[]
-
()
|
^ $
仅匹配字符串的开始,例如^dog匹配dog catcher中的dog,但不匹配the dog中的 dog 仅匹配字符串的结尾。