【发布时间】:2013-11-11 07:57:48
【问题描述】:
我尝试使用 PHP 中的 ereg 函数从使用 PHP 的字符串(可能存储在 CSV 文件中)获取具有特定格式 (02:AA:13:09:45:DE) 的所有数据.
这是我尝试过的:
$string = '02:AA:13:09:45:DE -90 hRm / -21 450 s RX: 1.0 , 1 . TX: 2.0 , MCS 0, 1 . 13:09:13:10:15:5D -33 hRm / -55 5000 s RX: 66.0 , MCS 0, 333 . TX: 66.0, MCS 0, 333 . 17:09:A3:07:30:DC -55 hRm / -22 hRm 456 s RX: 43.0 MCS 0, 434. TX: 43.0 , MCS 0, 43 .'
$pattern='^[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}';
ereg($pattern, $string, $matches);
print_r($matches);
这仅给出第一个值:02:AA:13:09:45:DE。 由于我不应该使用 preg_match_all(或任何其他 preg 函数),有没有其他方法可以实现这一点(获取所有数据)?
【问题讨论】:
-
为什么不应该使用 preg* 函数?!
-
我正在使用 php4 ,在 linux 发行版 openwrt 中也是如此,它根本没有使用 PCRE,并且 ereg 工作正常
-
@deceze 致命错误:调用未定义函数:第 49 行 test.php 中的 preg_match_all()。这是我使用 preg 时得到的结果
标签: php regex text-extraction