我遇到了一個Lua 5.0正則表達式,將適用於2場景的麻煩。遇到麻煩提出了一個正則表達式
1)表達= "[^V]Core %d+:%s*%+(%d+%.%d+)°C %(crit = %+(%d+%.%d+)°C%)"
這此字符串正確匹配:
Core 0: +45.0°C (high = +86.0°C, crit = +100.0°C)
然而,我想能夠:
Core 0: +45.0°C (crit = +100.0°C)
2)表達= "[^V]Core %d+:%s*%+(%d+%.%d+)°C %(high = %+%d+%.%d+°C, crit = %+(%d+%.%d+)°C%)"
此正確此字符串相匹配匹配任一個字符串並且有2個捕獲:第一個溫度和臨界溫度。 (我不需要高溫)。 我試過,但沒有運氣:
expression = "[^V]Core %d+:%s*%+(%d+%.%d+)°C %((?:high = %+%d+%.%d+°C,)crit = %+(%d+%.%d+)°C%)"
我在Lua但我覺得正則表達式語法緊密匹配其他語言如Perl。 任何人有任何想法?
我真的希望溫度永遠不會是負面的:-) – AndersH 2011-03-13 10:34:16