0
我有一些代碼從OBD-II適配器接收數據,並通過一些正則表達式運行它,以便我可以識別包含故障代碼的部分。就是這個。解析在Android中使用的診斷故障碼(DTC)數據
dataRecieved = readMessage;
RX.setText(dataRecieved);
if((dataRecieved != null) && dataRecieved.matches("\\s*[A-F0-9]{2} [A-F0-9]{2} [A-F0-9]{2} [A-F0-9]{2} [A-F0-9]{2} [A-F0-9]{2}\\s*\r?\n?")) {
if(D) Log.i(TAG, "REGEX ");
dataRecieved = dataRecieved.replace(">", "").trim();
DTC.setText(dataRecieved);
正則表達式我設置任何接收到一個TextView在Android中。但是,運行它時沒有文本集。我不知道這是否是我使用的正則表達式。它應該檢測像
>
01 00 14 53 00 00
包括或排除提示。
非常感謝,似乎現在正在工作。只是想知道,但第二個分組中使用了什麼? – v3rse 2013-05-12 06:30:55
'(?:...)'是一個非捕獲組。 **有很好的解釋** [here](http://www.regular-expressions.info/brackets.html)**。 – 2013-05-12 06:59:34
謝謝。我也想知道它是否適用於多行代碼。例如'01 00 14 53 00 00 03 01 90 88 70 10 03 00 00 00 00 00'在這種情況下,圖案重複3次。 – v3rse 2013-05-16 12:57:20