PDA

Просмотр полной версии : Переделать фамилии


-Onotole-
17.08.2009, 03:31
Есть база мужских фамилий в тхт файле.
Каждая фамилия на новой строке.
Нужно переделать их на женские и сохранить в новый файл.
Вопрос - Чем?

Ponchik
17.08.2009, 03:33
Да чем угодно
Напиши замену последних буков, если они "ов" замнеить на "ова"
И так многа многа вариантов, заипёшся :)

-Onotole-
17.08.2009, 03:34
Ов на ова - сейчас опробую,посмотрю :)
Не удачно,много фамилий на ин,и другое :/
Пример : Получается,что нужно "н" заменить на "на",но они попадаются и внутри фамилии :(

Pashkela
17.08.2009, 03:43
нереально сложно:

<?php
$a = 'иванов';
echo $a.'а';
?>

-Onotole-
17.08.2009, 03:43
<?php
$a = 'иванов';
echo $a.'а';
?>

:(

-Onotole-
17.08.2009, 03:47
"н " to "на "
Или "н/r/n" to "на/r/n"
/r/n новая страка вроде.
Не канае (

Pashkela
17.08.2009, 03:49
<?php
$a = fopen('fam.txt', 'r');// файл с мужскими фамилиями
$b = fopen('fam1.txt', 'w');// новый файл с женскими фамилиями
while (!feof($a)) {
$c = fgets($a);
fwrite($b,$c.'а' . "\r\n");
}
fclose ($a);
fclose ($b);
?>

-Onotole-
17.08.2009, 03:53
<?php
$a = fopen('fam.txt', 'r');// файл с мужскими фамилиями
$b = fopen('fam1.txt', 'w');// новый файл с женскими фамилиями
while (!feof($a)) {
$c = fgets($a);
fwrite($b,$c.'а' . "\r\n");
}
fclose ($a);
fclose ($b);
?>



Абабков
а
Абакумкин
а
Абалаков
а
Абашев
а
Абашкин
а
Абаимов
а
Абакумов
а
Абалдуев
а
Абашеев
а
Абашков
а
:(

Pashkela
17.08.2009, 03:56
Замени

$c = fgets($a);

на

$c = trim(fgets($a));

-Onotole-
17.08.2009, 04:01
Замени

$c = fgets($a);

на

$c = trim(fgets($a));

Теперь верно лепится,спасибо,но толку мало,у меня далеко не все фамилии заканчиваются на "ов"и подобное :)

Авдина
Авдосева
Авдошина
Авдышева
Авдюшина
Авдаева

Pashkela
17.08.2009, 04:09
и? где тут что неправильно?


Авдина
Авдосева
Авдошина
Авдышева
Авдюшина
Авдаева


покажи хоть одну фамилию, которая неправильно получалась

Если есть Плесецкий и нужно Плесецкая - тогда только составлять массив замен и менять с помощью srt_replace, больше никак

$arr = ('ий','ов'.....);
$arr1 = ('ая','ова'.....);

-Onotole-
17.08.2009, 04:12
Агриколянскийа
Адельфинскийа
Азанчевскийа
Аедоницкийа
Да,я скопировал явно не то,в пред.посте.

-Onotole-
17.08.2009, 04:33
8)

-Onotole-
17.08.2009, 04:48
Все,больее не актуально,спасибо 2 Павлов!
З.Ы.Заменил ;)