регулярка, начало предложения

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
Приветствую всех форумчан!

Продскажите почему так получается, есть текст

" крем действительно стоящий. Фурункулы прошли буквально на глазах. До этого 8 лет они росли, и я не могла от них избавиться. Причем были | на икрах очень заметные. Сейчас их нет. Я счастлива и мне больше не приходится краснеть за свои ножки. "

нужно мне удалить предложения содержащие символ |

делаю так (?<=\.).*?\|.*?\. но почему-то берется

"Фурункулы прошли буквально на глазах. До этого 8 лет они росли, и я не могла от них избавиться. Причем были "
то есть перед знаком | берется не текст до точки а еще несколько предложений, пробовал и вначале и [А-Я] и все уже перепробовал,
после знака все норм берется, конечно можно точку заменить на какой нить символ, но может у меня глюк?
 

lenin1973

Client
Регистрация
23.12.2013
Сообщения
52
Благодарностей
10
Баллы
8
Именно в этом примере, регулярка должна быть
Код:
(?<=\..*\..*\.)(.*?\|.*?\.)
То есть после 3-ей точки берется всё, до следующей точки
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
спарсеный текст, его много, я дал часть текста, и мне нужно из спарсеного текста удалить предложения с этим символом
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
проще наверно точку заменить и уже брать текст от того символа
 

lenin1973

Client
Регистрация
23.12.2013
Сообщения
52
Благодарностей
10
Баллы
8
Решения могут быть разными. Если получится нужную точку менять, то твой вариант :ay:
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
Решения могут быть разными. Если получится нужную точку менять, то твой вариант :ay:
да думаю это самый простой вариант, перепробовал кучу вариантов и как не странно при разных вариантах берется одинаковый промежуток текста
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 122
Баллы
113
Код:
.*(?=.*\|)\.
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 226
Баллы
113
Для данного случая подойдет такой вариант.
Код:
(?<=\.)[\w\ ]+\|[\w\ ]+\.
Если в других могут встречаться иные символы - их нужно тоже добавить.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Для данного случая подойдет такой вариант.
Код:
(?<=\.)[\w\ ]+\|[\w\ ]+\.
Если в других могут встречаться иные символы - их нужно тоже добавить.
сли уж на то пошло)
Код:
(?<=\.)[\w\ \|]+\.
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
да не ребят, все норм,

просто сделал все предложения с новой строки и все заработало, а было все в кучу вот и не работало
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
а еще как удалить предложения в которых менее 4 слов, то есть менее или равно 3 пробелов получается

никак не соображу
 

piarche

Пользователь
Регистрация
28.04.2015
Сообщения
141
Благодарностей
5
Баллы
18
отвечаю на свой вопрос

\n([^\s]+\s?){0,3}\.


([^\s]+\s?) - только вот никак не пойму что это?

(начало строки или пробел 1 или более пробел 0 или1) не пойму

а блин, это (любой символ не пробел 1 или более пробел 0 или1) УРА понял
 
Последнее редактирование:

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)