string str="氣壓:097.71kPa 氣溫:023.46度 濕溫:023.5度 濕度:026.1%RH 露點:002.9度";
怎么能提取出里面所有的數字,結果應該是:
97.71
23.46
23.5
26.1
2.9
不能用分割字串的方法,因為不同的設備傳回來的字串格式不一致?
求大神幫忙!!!!
uj5u.com熱心網友回復:
正則:[0-9]+|[0-9]+\.[0-9]*?
uj5u.com熱心網友回復:
不能用分割字串的方法?for回圈取出數字...uj5u.com熱心網友回復:
也可以,一個字符一個字符判斷,在數字范圍的保留,包括小數點uj5u.com熱心網友回復:
用正則/[-+]?[0-9]*\.?[0-9]+/
uj5u.com熱心網友回復:
可以先格式化讀取然后再轉為浮點數。以第一個數值為例:sscanf(str, "%6s%6s%3s" , str1,str2,str3)。這里將“氣溫:”給str1,“097.71”給str2,“kPa”給str3。此時,得到的“097.71”是字串,可以利用atof()函式,將字符轉為浮點數。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/240712.html
標籤:C#
