Мне нужно разобрать телефонные номера в строках, каждая строка может иметь более одного номера.Моя проблема в том, что номер телефона может выглядеть следующим образом:
912343267
91 234 32 67
912 343 267
34912343267
+34912343267
0034912343267
+34 912343267
+34 91 234 32 67
+34 912 343 267
Как я могу справиться с этим?Если у вас есть какие-то подсказки, буду признателен.
С наилучшими пожеланиями,
Updade1:
Я тестирую код, как в реальной среде:
$phone_list = "912343267 91 fgf ddf 234 32 67 dfffgg g 912 343 267 ffd dff fff 34912343267 ddssf f +34912343267 f fdd d 0034912343267 derd df e +34 912343267 fdd ff +34 91 234 32 67 ffd vv ff f +34 912 343 267";
$string = preg_replace('~[^0-9]~','',$phone_list);
echo $string;
Дает мне:
91234326791234326791234326734912343267349123432670034912343267349123432673491234326734912343267
Можно ли вывести числа в массиве?
С наилучшими пожеланиями,
Обновление2:
Я протестировал другой тип строки, но не смог.Я опубликую пример, если у кого-то есть какие-либо подсказки по этому поводу.
$phone_list = '</div>A Front para<br /><br /><br /><br /><br /><br />-Apoio;<br />-Criação;<br />-Campanhas;<br />-Promoções<br /><br /><br />CONDIÇÕES:<br /><br />Local de Trabalho: Es<br />Folgas: Mistas<br /><br /><br /><br />ordem 500€<br /><br /><br /><br />Mínimos:<br /><br />- Conhecimentos;<br />- Ensino ;<br />-INGLÊS.<br /><br /><br /><br />Candidaturas: <br />email@ffff.es<br />218559372 | 927 555 929 | <br />RH<br />Rua C. Sal. 40<br />1000-000 Lisboa<br /><br /><br />';
$phone_list = preg_replace('~[^0-9a-z]~i','',$phone_list);
$phone_list = preg_split('~[a-z]+~i',$phone_list);
print_r($phone_list);
Код возврата:
Array ( [0] => [1] => 500 [2] => 218559372927555929 [3] => 40 [4] => 1000000 [5] => )
Код должен анализировать: 218559372 и 927555929 как отдельные числа.
Есть какие-нибудь подсказки по этому поводу?
С наилучшими пожеланиями,