relictus
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору UPD: неактуально. Можно ли (и как) решить следующие задачи средствами регулярного выражения (PCRE)? 1) Имеется построчный список (фамилия, имя, отчество) в верхнем регистре, некоторые могут быть сокращенные или состоять из более, чем трех слов, а также (не)иметь различные знаки препинания. Необходимо оставить первые буквы каждого слова в верхнем регистре, остальные преобразовать в нижний. Пример вариантов: ШАБАЗЯН АМАЯК АМЛЕТОВИЧ | --> | Шабазян Амаяк Амлетович | ФОМЕНКО А И | --> | Фоменко А И | МУРЗАЕВ НУР-МУХМЕД ЯГМУР-АЛИЕВИЧ | --> | Мурзаев Нур-Мухмед Ягмур-Алиевич | ХАСАНОВ М М | --> | Хасанов М М | ЗУБКО(ШАБАЛДАС) МАЙЯ ВИКТОРОВНА | --> | Зубко(Шабалдас) Майя Викторовна | ИБРАГИМОВ ХАЛИЛ РАСИМ ОГЛЫ | --> | Ибрагимов Халил Расим Оглы | 2) Имеется построчный список адресов (улица, дом, квартира), где улица всегда в верхнем регистре, может быть иметь сокращение или состоять из более, чем одного слова. Необходимо оставить первые буквы каждого слова улицы в верхнем регистре, остальные преобразовать в нижний. Часть адреса после 1-й запятой (т.е. после улицы) должна остаться неизменной. Пример вариантов: ЛИТЕЙНЫЙ, 34/1, кв.4 | --> | Литейный, 34/1, кв.4 | 50 ЛЕТ ВЛКСМ, 4/А, кв.10 | --> | 50 Лет Влксм, 4/А, кв.10 | ЛЕНИНА ПЛ., 436, кв.3 | --> | Ленина Пл., 436, кв.3 | К.МАРКСА, 8, кв.16 | --> | К.Маркса, 8, кв.16 | КОНЕЧНАЯ СТАНЦИЯ, 26/2, кв.53А | --> | Конечная Станция, 26/2, кв.53А | Доп.вопрос - можно ли составить одну регулярку на обе задачи, если оные решаются? | Всего записей: 3751 | Зарегистр. 19-04-2005 | Отправлено: 09:11 27-03-2020 | Исправлено: relictus, 10:18 29-03-2020 |
|