0

を使用して最後の一致を取得することは可能preg_match_allですか? この正規表現を使用すると 126 81 しか返されず、それは私が求めているものではありません。この場合、183 34 が返されるようにします。

$string = 'Korpstigen 126 183 34 Kalmar';
preg_match_all("/[0-9]{5}|[0-9]{3} [0-9]{2}/", $string, $matches, PREG_OFFSET_CAPTURE);
4

2 に答える 2

2

単語境界を使用することをお勧めします\b:

preg_match_all("/\b[0-9]{5}\b|\b[0-9]{3} [0-9]{2}\b/", $string, $matches, PREG_OFFSET_CAPTURE);

regex101 デモ.

于 2013-09-17T16:52:28.630 に答える