PHP регулярка

программирование php веб дизайн регулярные выражения регулярное выражение

Доброго времени суток!
есть выражение которое режет текст на строки

preg_match_all("/.*?[.?!](?:\s|$)/s", $text,$items);

пример текста (обратите внимание на двоеточие)

Die Bybel van die Christene. Die woord: <<тут нет переброса каретки>>'Bybel' stam van die .
Die Bybel bevat drie verskillende versamelings boeke:<<тут находится переброс каретки>>
Die Ou Testament, ook die Hebreeuse Bybel genoem.

нужно сделать чтобы предложение резало после ":" и переброса каретки, но в тексте так же могут быть ":" без переброса каретки и мой 2й вариант не обращает внимания на ":" без \r\n

preg_match_all("/.*?[.?!:](?:\s|\s\D\w|$)/s", $text,$items);/

Примечание:
2 index0h

все происходит вот так

$text = preg_replace("/(\r\n)/", " ", $_POST['text']); //ybiraem perevod karetki

$rtext = mysql_escape_string($text);//text from form

preg_match_all("/.*?[.?!:](?:\s|\s\D\w|$)/s", $rtext,$items);//rezgem na stroki

и почти работает)

а когда сделал так как Вы сказали

$text = preg_replace("/(\r\n)/", " ", $_POST['text']); //ybiraem perevod karetki

$rtext = mysql_escape_string($text);//text from form

$items = preg_split('/:\s*[\r\n]/s', $rtext);//rezgem na stroki

то выдает только одну строчку с "�"

наверное я неправильно понял...
Ответы:
хм, а почему не сделать проще?
preg_split('/:\s*[\r\n]/s', $myString);
Несколько непонятно сформулирован вопрос..
может так?:
/(.*:)|(:.*)/


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.