1

いくつかの数字 (1 桁から 9 までの範囲) で構成される文字列内の「ID」を照合しようとしています (ポイントは、可変長であることです)。次のコードは、ID を逆参照しません。私はPHPに非常に慣れていないので、グーグルを試してみましたが、良い答えはありませんでした。

<?php
$to = 'data-hovercard="/ajax/hovercard/user.php?id=100002781344760">Ae fj';

preg_match('/user.php?id=[\d]+\\"/', $to, $matches);

echo $matches[0];
?>

全体のポイントは、「/ajax/hovercard/user.php?id=100002781344760">」で「10000278134476」を取得することです。

4

1 に答える 1

0

グループをマークするために s を追加する()とうまくいくはずです。より意味のあるものにしたい場合は、名前付きグループを次のように試すことができます(?<name>)

preg_match('/user.php?id=([\d]+)\\"/', $to, $matches);
//                       ^     ^
echo $matches[1]; // capture groups indexed from 1, 0 index is for the whole matched string

パターン構文の詳細については、ドキュメントを参照してください。

于 2013-02-16T23:54:38.333 に答える