0

1425string から整数を抽出しようとしています$123 / 123 - 1425ft² - Some random message。ただし、以下のコードでは抽出することはでき5ません。1425

正規表現が苦手で、以前*は複数の数字を照合していました。

何がうまくいかなかったのですか?ありがとうございました!

PHP

$text = '$123 / 123 - 1425ft² - Some random message';
$pattern = '/ ([0-9])*ft²/s';
preg_match($pattern, $text, $matches);

echo '<pre>';
print_r($matches);

出力

Array
(
    [0] =>  1425ft²
    [1] => 5
)
4

3 に答える 3

5

パターンを少し変更

$pattern = '/ ([0-9]*)ft²/';

または、少なくとも 1 つの一致する番号が必要な場合

$pattern = '/ ([0-9]+)ft²/';

于 2013-03-04T08:59:35.687 に答える
0

これを試して :

$text = '$123 / 123 - 1425ft² - Some random message';
$pattern = '/(?P<number>\d+)ft²/';
preg_match($pattern, $text, $matches);

echo $matches['number'];
于 2013-03-04T09:02:10.750 に答える
0
$text = '$123 / 123 - 1425ft² - Some random message';
$pattern = '/([0-9]+)ft²/s';
preg_match($pattern, $text, $matches);

echo '<pre>';
print_r($matches);

上記のコードを使用します。私はそれをテストしました。その正常に動作します。

于 2013-03-04T09:00:56.007 に答える