|
|
|
| необходимо вывести отдельно фамилию, имя и отчество. как?
<?php
$fio="Фамилия И.О.";
$pattern = preg_match("/([^\s]+)\s+([^\s.]\.[^\s.]\.)/",$fio);
$text = preg_match_all($pattern, $fio, $out);
echo $out[1].'<p>';
echo $out[2].'<p>';
echo $out[3].'<p>';
?>
|
| |
|
|
|
|
|
|
|
для: ok computer
(14.02.2008 в 08:36)
| |
preg_match("/([^\s]+)\s+([^\s]+)\.+([^\s]+)/",$fio,$out_arr);
|
| |
|
|
|
|
|
|
|
для: ok computer
(14.02.2008 в 09:15)
| | Не проще порезать строку на куски (режем - где пробелы) функцией preg_split?
Если порядок следования ФИО один и тот же, то можно выделить Фамилию, Имя, Отчетство в массив с таким же порядком следования элементов. | |
|
|
|
|
|
|
|
для: Evgen
(14.02.2008 в 17:18)
| | такие ещё варианты есть
<?
$fio="Фамилия И.О.";
$pattern = "#(\S+)\s+(\S)\.(\S)\.#";
preg_match_all($pattern, $fio, $out);
print_r($out);
?><hr><?
preg_match_all($pattern, $fio, $out, PREG_SET_ORDER);
print_r($out);
?><hr><?
preg_match($pattern, $fio, $out);
print_r($out);
?><hr><?
$out = sscanf($fio, "%s %c.%c.");
print_r($out);
?>
|
| |
|
|
|