我有一個字符串,它是不確定的,我有以下字符串:
ST,NT,+ 16KG ~YT,NT,+ 16KG
ST,NT) 16KG +YT,N,+ 16KG
ST,NT,+ 16KG
等
PHP的preg_match獲得空間後一個字,這是它一個字KG
我的問題是有沒有任何正則表達式只採取16KG或,因爲字符串輸出從數字規模。
我正在使用串口的應用程序,所以我不能解析那裏的數據,而在數字刻度工具的輸出只有16KG
。
我有一個字符串,它是不確定的,我有以下字符串:
ST,NT,+ 16KG ~YT,NT,+ 16KG
ST,NT) 16KG +YT,N,+ 16KG
ST,NT,+ 16KG
等
PHP的preg_match獲得空間後一個字,這是它一個字KG
我的問題是有沒有任何正則表達式只採取16KG或,因爲字符串輸出從數字規模。
我正在使用串口的應用程序,所以我不能解析那裏的數據,而在數字刻度工具的輸出只有16KG
。
所以你想獲得KG
之前的數字?
嘗試:
<?php
$input = 'ST,NT,+ 16KG ~YT,NT,+ 16KG';
preg_match('/(\d+)KG/',$input,$matches);
echo $matches[1];
?>
輸出:
16
嗨,歐文,謝謝你的回覆,我得到錯誤,當我print_r($匹配)我得到數組與空數據。 –
你能顯示你的完整代碼嗎?我的代碼確實適用於你的示例輸入:http://ideone.com/nTYDSa – howanghk
嗨sory,這是我的工作,非常感謝歐文先生。 –
*參見[打開源使用RegexBuddy替代(http://stackoverflow.com/questions/89718/is-there)和[在線正則表達式測試](http://stackoverflow.com/questions/32282/regex-testing)以獲得更好的教程,或[RegExp.info](http://regular-expressions.info/)。 – mario
可能重複的[從端口獲取結果fickle數據](http://stackoverflow.com/questions/14015683/read-data-from-port-get-result-fickle-data) – mario
馬里奧在那裏我得不到答案,你可以看到誰在那裏尋找。 –