0
以下正則表達式有什麼問題?preg_match_all不工作
$source =
"Je (1200) recycler(s) hebben een totale opslagcapaciteit van 24.000.000.
In het bestemmingsveld [2:188:7] zweven 0 metaal en 5.000 kristal in de ruimte.
Je hebt 0 metaal en 5.000 kristal opgehaald."
echo $source;
$regex = 'Je \(([0-9.]*?)\) recycler(s) hebben een totale opslagcapaciteit van ([0-9.]*?). ';
$regex .= 'In het bestemmingsveld \[2:188:7\] zweven ([0-9.]*?) metaal en ([0-9.]*?) kristal in de ruimte. ';
$regex .= 'Je hebt ([0-9.]*?) metaal en ([0-9.]*?) kristal opgehaald.';
$matches = array();
preg_match_all('/' . $regex . '/i', $source, $matches, PREG_SET_ORDER);
print_r($matches);
是您的上幾行輸入像在這個例子中一樣?另外,你的數字應該用'[0-9] +(?:\。[0-9] +)*',而不是'[0-9]。*?'_ – fge 2012-01-10 19:52:09
你應該用什麼來期待它呢? ?你是否收到任何錯誤訊息? – 2012-01-10 19:52:32
我認爲你 - 至少在一件事情上 - 需要避開一些團體的時期。 ([0-9。] *?)應該是([0-9 \。] *?) - 點否則收集所有字符,然後0-9沒有意義(如果那是點,我認爲它不是) – 2012-01-10 19:54:20