新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > labview編程技巧-----字符串之如何判斷字符串包含的是數(shù)字

labview編程技巧-----字符串之如何判斷字符串包含的是數(shù)字

作者: 時(shí)間:2017-01-09 來(lái)源:網(wǎng)絡(luò) 收藏
字符串編程是LABVIEW的編程難點(diǎn)之一,有的時(shí)候,用一整天的時(shí)間做一個(gè)字符串處理的VI是常有的事,尤其是對(duì)各類專用設(shè)備特殊的通訊協(xié)議和禎結(jié)構(gòu).

從最簡(jiǎn)單的無(wú)符號(hào)10進(jìn)制整數(shù)談起

1.無(wú)符號(hào)DEC整數(shù)

本文引用地址:http://2s4d.com/article/201701/337273.htm比如字符串"1234",顯然它包括的全部是數(shù)字,而不是字符(如A,B,C等),問(wèn)題是如何在程序中判定.

無(wú)符號(hào)10進(jìn)制整數(shù)只包含0,1..9,因此可以借助C語(yǔ)言的方法,用ASCII值來(lái)判定.0的ASCII是0X30,
1..9 分別是0X31..0X39,通過(guò)把字符串轉(zhuǎn)換成U8數(shù)組,U8數(shù)組里保存的是字符的ASCII值.



LABVIEW中提供了判斷10進(jìn)制字符的節(jié)點(diǎn),IS DEC DIGIT?,用它可以簡(jiǎn)化程序,同時(shí)它是個(gè)多態(tài)的VI,LABVIEW專門有一個(gè)例子程序說(shuō)明它的使用方法,需要說(shuō)明的是對(duì)于一個(gè)字符串,它只判斷第一個(gè)字符.

看看它接受的輸入類型.



因此,更簡(jiǎn)單地判斷10進(jìn)制無(wú)符號(hào)整數(shù)的方法如下圖所示:



同理,LABIVEW同時(shí)提供了判斷16進(jìn)制,8禁止的節(jié)點(diǎn),因此可以方便地利用上面的方法判斷是否是16進(jìn)制和8進(jìn)制的數(shù)字字符串.

LABVIEW沒有提供判斷二進(jìn)制字符串的方法,不過(guò)只需要把上面的0X39改成0X31就可以判斷是否是二進(jìn)制字符串.

2.無(wú)符號(hào)浮點(diǎn)數(shù)的判定

無(wú)符號(hào)的浮點(diǎn)數(shù),比如1.234與無(wú)符號(hào)整數(shù)比較,只需要判定是否包含小數(shù)點(diǎn)就可以了,另外有的整數(shù)用逗號(hào)表示千位分割符號(hào),也可以采用類似的方法判定.



3.LABVIEW特殊類型表示方法
LABVIEW有幾種數(shù)值表示方法


這樣判斷起來(lái)就非常復(fù)雜,需要包括+ - E K M等的判斷.

下面提供一種通用的判斷方法,雖然通用,相應(yīng)效率也比較低,如果知道確切格式,用上面的方法比較合適

可以直接判斷+,-,科學(xué)記數(shù)法,不支持SI,逗號(hào)等


關(guān)鍵詞: labview編程技巧字符

評(píng)論


技術(shù)專區(qū)

關(guān)閉