«Фавориты Успеха» logo Делаем украинский текст мелозвучным с помощью PHP
© FAVOR.com.ua
 
Делаем украинский текст мелозвучным с помощью PHP
  

Следующий PHP-код исправляет украинский текст, в соответствии с правилами мелозвучности украинского языка:

return preg_replace(’/([аеиоуюяєіїАЕИОУЮЯЄІЇ])(<[^>]+?>)?((\s| | +)у(\s| | +)([^вВ]))/’, ’$1$2$4в$5$6’,
    preg_replace(’/([^аеиоуюяєіїАЕИОУЮЯЄІЇ])(<[^>]+?>)?((\s| | +)в(\s| | +)([^уУ]))/’, ’$1$2$4у$5$6’,
    preg_replace(’/(\s| | +)в(\s| | +)([вВ])/’, ’$1у$2$3’,
    preg_replace(’/(\s| | +)у(\s| | +)([уУ])/’, ’$1в$2$3’, $s))));

Таким образом, фраза «Фаворит Експертів в номінації» преобразуется в «Фаворит Експертів у номінації»,
а «Фаворит Успіху у номінації» становится «Фаворит Успіху в номінації».

Более того, код проверяет следующую букву, после в/у, и никогда не позволит стоять букве «у» перед словом начинающимся на «у», и не дасть «в» стоять перед другой «в». Например, фразу «погода в Україні» функция не позволит превратить в «погода у Україні», несмотря на то, что перед «у» стоит другая гласная.

https://favor.com.ua/ru/blogs/4944.html