php, регулярное выражение

12
M
На сайте с 20.08.2004
Offline
376
#11
bearman:
заюзайте типограф какой нить

посоветуйте типограф на пхп :)

знаю только один, ито пришлось его подкручивать :)

работающие онлайн не интересуют - иногда бывают недоступные - что делает процесс безсмысленным

Всем спасибо

сейчас подробней почитаю ваши ссылки и примеры.

Miracle добавил 14.03.2010 в 12:30

malls:
$out*=*preg_replace("'([\.\?\!]+[\t\n\r*]*[а-яА-Я])'",strtoupper('\\1'),$str);*

У меня ютф, но даже так код не работает

$text = preg_replace("#([\.\?\!]+[\t\n\r ]*[а-яА-Я])#u",mb_strtoupper('\\1'),$text);

да и задача у меня была немного другая )

отец сыночка, лапочки дочки и еще одного сыночка
[Удален]
#12
malls:
$out = preg_replace("'([\.\?\!]+[\t\n\r ]*[а-яА-Я])'",strtoupper('\\1'),$str);

прости, но бред :D

я про стртуапер

M
На сайте с 20.08.2004
Offline
376
#13
Netsp:
Эту функцию глянь:

спасибо, Решение для ютф и для русских символов нашел здесь

http://ua.php.net/manual/en/function.ucfirst.php#93763

malls
На сайте с 08.08.2005
Offline
255
#14
Miracle:
У меня ютф, но даже так код не работает

Я не проверял. Грызите мануалы самостоятельно, я лишь предложил пример решения...

Miracle:
да и задача у меня была немного другая )

Задачу я понял как сделать upper-ом все что после конца предложения. Можно реализовать то же самое через preg_replace_callback - но зачем? Если по сути она просто дает возможность подключить пользовательскую функцию, а тут нужна стандартная...

bearman:
прости, но бред :D
я про стртуапер

да я взял первое что в голову пришло... Ты еще меня спроси почему я сам не попробовал его и не буду? Это пример по сути из мануала по preg_replace по памяти... Тут же не нянчутся с лохами - тут просто дают советы в каком направлении мыслить - sapienti sat!

malls добавил 14.03.2010 в 12:45

Miracle:
спасибо, Решение для ютф и для русских символов нашел здесь
http://ua.php.net/manual/en/function.ucfirst.php#93763

Там скорее всего предложено разбивать сплитом и потом клеить? Это ИМХО не самый гуд.

M
На сайте с 20.08.2004
Offline
376
#15
malls:
Тут же не нянчутся с лохами

Будем считать что это ко мне не относится :).

Но с другой стороны я не понимаю, какой смысл писать как вы говорите в каком направлении рыть - и без вас понятно какие функции юзать. Другое дело как. Да, у меня не хватило опыта, еще эти заморочки с ютфом, но я не стесняюсь этого, все учатся, и далеко не все всегда все знают.

Всем спасибо за ответы.

Возникла другая проблема, есть аббревиатуры, которые должны быть с большой буквы, вот тут даже понять не могу с какого бока подходить. Это все для юзеров, заморочки им не нужны. :)

malls
На сайте с 08.08.2005
Offline
255
#16
Miracle:
Будем считать что это ко мне не относится :).

Нет конечно :) Вы вон и сами догнали как поиграть настройками.

Miracle:
Но с другой стороны я не понимаю, какой смысл писать как вы говорите в каком направлении рыть - и без вас понятно какие функции юзать. Другое дело как. Да, у меня не хватило опыта, еще эти заморочки с ютфом, но я не стесняюсь этого, все учатся, и далеко не все всегда все знают.

Ну гляньте мануал про preg_replace - там как раз пример с strtoupper живой есть, только кажется для тегов сделан... С ютуфом у многих заморочки бывают. Но это надо просто пережить. :) Поиграться настройками и т.п. Устранить из шаблона русские буквы и означить их как просто леттер (\w) (см. модификаторы паттерна) и т.п.

Miracle:

Возникла другая проблема, есть аббревиатуры, которые должны быть с большой буквы, вот тут даже понять не могу с какого бока подходить. Это все для юзеров, заморочки им не нужны. :)

А как отличить абревиатуру от слова? Только списком абревиатур и сравнить... Т.е. загоняем абревиатуры в массив и сравниваем регистронезависимо. Если вопрос в том где вязть сами абревиатуры - гуглим ispell словари для русского, качаем их - там они отдельным даже файлом идут кажется...

M
На сайте с 20.08.2004
Offline
376
#17

О, еще такой вопрос, подскажите пожалуйста, как можно расчитать кол-во больших и маленьких букв в предложении?

Спасибо.

Miracle добавил 14.03.2010 в 12:57

malls, Не все так просто, иногда по имени обращаются, иногда ники, города и тд - все не загонишь, как собственно и аббревиатуры.

Просто я не люблю когда темы в блоге создают из одних больших букв, предупреждения, разъяснения, подсказки - моим посетителям почему-то не помогают :)

Вот и приходится придумывать и крутится :)

malls
На сайте с 08.08.2005
Offline
255
#18
Miracle:
О, еще такой вопрос, подскажите пожалуйста, как можно расчитать кол-во больших и маленьких букв в предложении?

Вариант из регулярок: preg_match_all дважды, для [а-я] и для [А-Я] - длинна массивов на выходе будет искомым значением.

Miracle:
malls, Не все так просто, иногда по имени обращаются, иногда ники, города и тд - все не загонишь, как собственно и аббревиатуры.

тогда никак! Ибо нет возможности выделить искомое...

M
На сайте с 20.08.2004
Offline
376
#19

спс. сделал.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий