регулярное выражения для получения всех предложения из текста.
Добрый день.
Подскажите вариант для получения всех предложение из текста. Сейчас есть вот такое: "([^.!?]+)" Но если в предложение будет дата (20.10.17) или десятичное число (0.4), то предложение обрежется. Или многоточие. Примеры предложений: Код:
Предложение 1, которое уже работает. Может кто то сталкивался с такой задачей, спасибо. |
ivnjavascript,
<script> "use strict" var s = `Предложение 1, которое уже работает. Предложение 2.1, которое не будет работать. Предложение 3, которое тоже не будет работать из-за многоточий... Предложение 4, которое не будет работать из-за даты 20.10.17!`; var reg = /([^.!?]|(\.\d))+(?:[.!?]+)/gim; document.write(JSON.stringify(s.match(reg))) </script> |
предложение заканчивается ".{1,3} или !{1,3} или ?{1,3} и пробел\s" в чем проблема разбить текст на строки
|
Lion777,
:-? |
Ну проблема в чем, предложение заканчивается на точку или три, на восклицательный знак или три, на знак вопроса или три и после всего этого идет пробел, парсим и заганяем в массив.
|
Lion777,
можно пример??? |
да тут с пробелами не канает, по данной регулярке есть еще вопрос, если предложение имеет сокращения "т.д и т.п"?
типа Предложение 1, которое уже работает и т.д. и т.п. Предложение 2.1, которое не будет работать. |
Цитата:
|
:-?
|
Часовой пояс GMT +3, время: 15:29. |