Как из ФИО сделать урезанную версию?

149
06 февраля 2022, 14:30

Помогите решить задачку. Не силен в регулярных выражениях. Имеется на входе - "Фамилия Имя Отчество" или "Фамилия Имя" могут быть оба варианта. На выходе нужно получить "Фамилия И.О." или "Фамилия И." соответственно

Answer 1

Если нужно именно регуляркой, то как-то так:

$str = 'Фамилия Имя Отчество';
echo preg_replace('~\h\K(\p{Lu})\p{Ll}+~u', '$1.', $str);
Answer 2

Можно на php

Пример:

$FIO = "Фамилия Имя Отчество";
$FIOarr = explode(' ', $FIO);
$count = count($FIOarr);
$Surname = $FIOarr[0];
$Name = iconv_substr($FIOarr[1], 0, 1) . ".";
if (array_key_exists(2, $FIOarr)){
    $Patronymic = ' ' . iconv_substr($FIOarr[2], 0, 1) . ".";
} else {
    $Patronymic = "";
}
$FIOnew = $Surname . ' ' . $Name . $Patronymic;
echo $FIOnew;
READ ALSO
Как сделать поиск по условию

Как сделать поиск по условию

Мне нужно что бы выводились только те пользователи которые попадают в условияНапример если да две даты с(01

100
Спарсить картинки с яндекса ( PHP + simple html dom parser)

Спарсить картинки с яндекса ( PHP + simple html dom parser)

Нужно: Спарсить первую картинку с сервиса https://yandexkz/images при помощи PHP и библиотеки simple html dom parser

152
почему не работает curl post запрос?

почему не работает curl post запрос?

Делаю отправку CURL запроса, а в ответ получаю на странице получаю "resource(2) of type (Unknown)" в чем проблема?

75