2012-12-25 21 views
0

我有一個字符串,它是不確定的,我有以下字符串:
ST,NT,+ 16KG ~YT,NT,+ 16KG
ST,NT) 16KG +YT,N,+ 16KG
ST,NT,+ 16KG
PHP的preg_match獲得空間後一個字,這是它一個字KG

我的問題是有沒有任何正則表達式只採取16KG或,因爲字符串輸出從數字規模。
我正在使用串口的應用程序,所以我不能解析那裏的數據,而在數字刻度工具的輸出只有16KG

+0

*參見[打開源使用RegexBuddy替代(http://stackoverflow.com/questions/89718/is-there)和[在線正則表達式測試](http://stackoverflow.com/questions/32282/regex-testing)以獲得更好的教程,或[RegExp.info](http://regular-expressions.info/)。 – mario

+0

可能重複的[從端口獲取結果fickle數據](http://stackoverflow.com/questions/14015683/read-data-from-port-get-result-fickle-data) – mario

+0

馬里奧在那裏我得不到答案,你可以看到誰在那裏尋找。 –

回答

0

所以你想獲得KG之前的數字?

嘗試:

<?php 
    $input = 'ST,NT,+ 16KG ~YT,NT,+ 16KG'; 
    preg_match('/(\d+)KG/',$input,$matches); 
    echo $matches[1]; 
?> 

輸出:

16 
+0

嗨,歐文,謝謝你的回覆,我得到錯誤,當我print_r($匹配)我得到數組與空數據。 –

+0

你能顯示你的完整代碼嗎?我的代碼確實適用於你的示例輸入:http://ideone.com/nTYDSa – howanghk

+0

嗨sory,這是我的工作,非常感謝歐文先生。 –

相關問題