2016-04-08 1 views
2

На самом деле у меня есть строка, как показано ниже?Как отфильтровать адрес Mac из указанной строки, используя Regex в PHP?

Physical Address Transport Name =================== 
========================================================== 
00-1F-29-A8-CA-54 Media disconnected 
00-21-5C-68-BB-17 \Device\Tcpip_{1A76BCB8-6BD0-45AA-85B0-3016C3F82A5B} 

Пожалуйста, помогите мне фильтровать только MAC-адрес из указанной строки. Спасибо вам.

+0

Привет Динеш: Можете ли вы показать нам, что вы пробовали до сих пор ? –

ответ

2

Решение с помощью preg_match_all функции и POSIX символов класса [:xdigit:] (будет соответствовать все шестнадцатеричные цифры):

// $str is your initial string 
preg_match_all("/\b[[:xdigit:]]{2}-[[:xdigit:]]{2}-[[:xdigit:]]{2}-[[:xdigit:]]{2}-[[:xdigit:]]{2}-[[:xdigit:]]{2}\b/su", $str, $matches); 

print_r($matches[0]); 

Выход:

Array 
(
    [0] => 00-1F-29-A8-CA-54 
    [1] => 00-21-5C-68-BB-17 
) 
+0

Действительно Большое вам спасибо @RomanPrekhrest. –

+0

добро пожаловать ... – RomanPerekhrest