hg-labview字符串处理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

4、匹配模式(match pattern)
【例一】
搜索到偏移量之后的第一个匹配的字符串后,分成三部分。 “匹配后偏移量”为子字符串 so 之后的首字符索引位置,如果未找到匹配字符 串,则返回-1. 【例二】
5、格式化日期/时间字符串(Format Date/Time String)
时间日期格式码及意义:
“替换全部”条件设置为 True,运行结果如下:
what's SB your SB fuck SB SBname CSB 的长度为 36,最后的 B 的索引是 35, 故下一个索引位置就是 36,即“替换后偏移量”。
【例三】
“替换全部”条件设置为 True; “忽略大小写”条件设置为 False →→→→→ 即要区分大小写 运行结果如下:
基本字符串处理函数(Labview 8.2)
Hu Guang
1、字符串长度(string length)
结果显示为:3 这点与 C 语言的不一样,C 语言默认包括空字符\0,所以 C 语言的结果应该是 4!
2、替换子字符串(replace substring)
字符串
子字符串 偏移量 长度子字符串长度
3、搜索替换字符串(search and replace string)
【例一】
Baidu Nhomakorabea运行结果:
解释: “替换全部”这个条件默认是 False,所以该例中只替换了第一个 so “替换后偏移量”是指替换后,子字符串末的下一个索引位置。 what’s SB 的长度是 9,但是最后的 B 的索引是 8,故下一个索引位置就是 9. 【例二】
结果字符串 替换子字符串
功能:将字符串中从偏移量位置开始某段长度的(字符串的)子字符串删掉,然 后将删除部分用新的字符串代替。 【例一】
偏移量:0 →→→→从字符串的第零个字符开始替换 (字符串的)子字符串长度:0 →→→→即从偏移量处开始插入子字符串
新子字符串 make me.长度为 8,替换掉字符串的前 8 个字符, 即替换掉字符串的子字符串 what’s y 这 8 个字符。
可见最后的那个 sO 就因为大写小不匹配而没有被替换。 what's SB your SB fuck SB SB 字长为 28,最后的 B 的索引为 27,故下一个索 引位置就是 28,即“替换后偏移量”。 【例四】
偏移量:8 →→→即从索引号 8 开始向后搜索 so 字符 正好就是从第一个 o 开始搜索,因此第一个 so 就没有被替换。
*这里正好借这个例子可以对照理解下“格式化写入字符串函数”和“扫描字符 串函数”的用法!!
【字符串处理函数 综合运用举例】
步骤: (1)在前面板依次放置以下输入、显示控件: 字符串与路径→字符串输入控件,命名为“字符串头”; 数值→时间标识输入控件,命名为“时间日期”; 数值→数值输入控件,命名为“采集电压”; 数值→数值输入控件,命名为“频率”; 字符串与路径→字符串输入控件,命名为“注释”; (以下显示控件,如果对于各个函数的输出数据类型不是很清楚的情况下,这个 完全可以在程序框图里操作,方法是:在各个函数的输出端口处,当鼠标变成连 线工具时右击→创建→显示控件,系统会自动识别函数输出数据类型而为你创建 对应的显示控件的。) 字符串与路径→字符串显示控件,命名为“结果字符串 3”; 字符串与路径→字符串显示控件,命名为“匹配字符串”; 数值→数值显示控件,命名为“电压”;
另外,%1x 和%2x 有什么差别呢?——我不知道。
6、删除空白(trim whitespace)
用于删除输入字符串两端、或首端、或末端的空白符。 下例为删除输入字符串两端的空白符。
基本的字符串处理相关函数就说这几个吧,还有几个我自己也没搞懂。更多的实 践应用,应该就能更深刻的理解每个函数的意义的用法吧! 【小小细节】
以连接字符串函数为例,字符串 0 和字符串 1 在框中的对齐方式不一样,只因这 个两个字符常量的放置方式不一样! 字符串 0 的方式是:将鼠标移至连接字符串函数的字符串 0 端口,当鼠标变成连 线工具 时点击鼠标右键→创建→常量。 字符串 1 的方式是:编程→字符串→字符串常量。 这样才造成了一个右对齐,一个左对齐。
偏移量:24 →→→超出了字符串的长度 (字符串的)子字符串长度:9 →→→这里偏移量是多少也无所谓了
偏移量超出了字符串的长度,没有空余的地方可以让新子字符串拼接上去了,所 以最后的结果就是没有替换任何字符,也没有拼接上去。 总结:不管偏移量如何,不管长度如何,反正新子字符串要全插进去! 前提是偏移量≤字符串长度
【例二】
偏移量:0 (字符串的)子字符串长度:2
新子字符串从字符串的第零个元素开始,替换掉字符串的前 2 个子字符。 用 8 个字符替换 2 个。 【例三】
偏移量:3 (字符串的)子字符串长度:2
新子字符串从字符串的第三个元素开始,替换掉字符串的前 3 个子字符。 用 8 个字符代替了 2 个字符。 【例四】
几处注意的地方: ①运行结果显示%U 和%W 的值是一样的,其实这个是有区别的,结果一样只因为 试验时间是周三,如果是周日,那这个 2 个结果肯定是不一样的! ②%A 和%a 一样。 ③%B 和%b 一样。 ④“通用时间”是格林尼治时间,北京是东八区,就是比格林尼治时间早 8 小时。 所以,%z(本地时间去通用时间之差)=8 小时。 ⑤关于长日期格式与短日期格式。以电脑上的标准举例,开始→控制面板→区域 和语言选项,弹出的选项卡中截取了如下图。但是上例中带撇号就有点不明白了。
(2)在程序框图中依次放置以下函数: 字符串→格式化写入字符串; 字符串→匹配模式; 字符串→扫描字符串; (3)按上图创建各类常量,并连线。 这里有个注意点:格式化写入字符串函数的输入端子,显示的是 DBL 类型数据输 入,即数值型双精度浮点数,这里可能会有学习者认为一个字符串输入控件怎么 和这个端口连接,其实大可不必担心,直接连上去就可以了,端口会根据合法输 入控件的数据类型自动进行匹配。
(在前面板中放置:数值→时间标识输入控件,然后右击该控件,选择‘属性’,在‘格
式与精度’页,选择[高级编辑模式],则自动切换到高级模式,就会看到以下的“绝对时
间格式代码”。)
%Z:时区。 %z:本地时间与通用时间之差。 %Y:四位年份。如显示现在的 2012. %y:年份的后 2 位(00-99),即年代。如现在是 2012,就只显示后面的 12. %m:月份(01 - 12)。 %b:月份名称缩写。这个符号的意义是提取当前的月份,如前面板将显示为“十 一月”。(%B 的功能和它一样)! %d:日期(一个月中的天值)。以数字形式显示出来。 %a:星期名称缩写。这个符号的意义是提取当前的星期几,如前面板显示为“星 期二” 。(%A 的功能和它一样)! %p:“上午/下午”是否显示的标志。 %H:时。24 小时制格式(01 - 23)。 %I:时。12 小时制格式(01 - 12)。 %M:分钟(00 - 59)。 %S:秒值(00 - 59)。 %数字 u:秒后面的显示精度。%3u 表示显示秒小数点后 3 位小数秒。 %c:默认日期与时间。前面板会显示:2012-11-27 16:23:40 %x:本地日期格式。前面板会显示:2012-11-27 %1x:长日期格式。前面板会显示:2012'年'11'月'28'日' %2x:长日期格式缩写。前面板会显示:2012'年'11'月'28'日' %X:本地时间格式。前面板会显示:16:23:40 %j:一年中的天值。 %U:一年中的星期数(00 - 53)。星期日是每个星期的第一天。 %W:一年中的星期数(00 - 53)。星期一是每个星期的第一天。 %w:星期值(0 - 6)。
偏移量:3 (字符串的)子字符串长度:9
注意这里的长度超过了新子字符串的长度,运行结果见上,超出的部分用空格代 替了! 【例五】
偏移量:23 →→→为字符串的长度 (字符串的)子字符串长度:9 →→→这里偏移量是多少也无所谓了
奇怪:字符串的长度就是 23,偏移量为 23 的话,个人觉得新子字符串是接不上 去了的,但是试验后发现是拼接上去了。结果是正好拼接上去了,但是没有替换 任何字符(连空格都没有)。见下面试验例子。 【例六】
相关文档
最新文档