1

16197226146PHPを使用して次の文字列から抽出したいと思います。

"(480) 710-6186" <18583894531.16197226146.S7KH51hwhM@txt.voice.google.com>

誰かが正規表現を手伝ってくれませんか?

4

2 に答える 2

4

<\d*?\.(\d+)

<    Match "<"
\d   Match digits
   *    0 or more times
   ?    Lazy, take as little as possible
\.   Match a "."
(    Capture
   \d   Match digits
   +    1 or more times
)    Stop capturing

これは、。の後の2番目の数字と一致し.ます。試合はグループ1にあります。

if (preg_match("/<\d*?\.(\d+)/", $subject, $regs)) {
    $result = $regs[1];
} else {
    $result = "";
}

ここで正規表現で遊ぶことができます

于 2012-06-07T23:38:07.680 に答える
0

explodeを使用できます。

$value = "(480) 710-6186"<18583894531.16197226146.S7KH51hwhM@txt.voice.google.com>";

$result  = explode('.', $value);
echo $result[1]; // is 16197226146
于 2015-02-14T11:20:04.973 に答える