我想使用PHP从以下字符串中提取16197226146
:
"(480) 710-6186" <18583894531.16197226146.S7KH51hwhM@txt.voice.google.com>
有人可以帮我解决正则表达式吗?
答案 0 :(得分: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
匹配.
后的第二个数字。比赛在第1组。
if (preg_match("/<\d*?\.(\d+)/", $subject, $regs)) {
$result = $regs[1];
} else {
$result = "";
}
答案 1 :(得分:0)
你可以使用爆炸。
$value = "(480) 710-6186"<18583894531.16197226146.S7KH51hwhM@txt.voice.google.com>";
$result = explode('.', $value);
echo $result[1]; // is 16197226146