Как разобрать информацию, не используя взрыв?

У меня есть некоторая информация, которую я проанализировал из инфобокса Википедии с помощью API Википедии. Одна из моих Информаций, которую я хочу проанализировать, это дата рождения:

$birthdate = "birth_date = {{Birth date|1958|8|29}}"

я хочу иметь информацию о том, что вывод birtdate выглядит следующим образом:

1958-8-29

в моих соображениях я могу использовать функцию PHP explode но я думаю, что это очень плохой способ вернуть в каждом случае нужную информацию.

Мой вопрос:

Кто-нибудь знает способ парсинга информации о дате рождения в каждом конкретном случае, независимо от другого контента?
И если да, можете ли вы привести пример?

0

Решение

Вы можете попробовать это с регулярным выражением.

$matches = array();
$birthdate = "birth_date = {{Birth date|1958|8|29}}";
preg_match('/^(.*)\|([0-9]{4})\|([0-9]{1,2})\|([0-9]{1,2})}}/is', $birthdate, $matches);
if (!empty($matches[2]) && !empty($matches[3]) && !empty($matches[4])) {
echo $matches[2]."-".$matches[3]."-".$matches[4];
} else {
echo 'Not found the parts of the date';
}
//Output is: 1958-8-29
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]