Найти - Пользователи
Полная версия: Помогите перевести рег. выражение с PHP на Python
Начало » Python для новичков » Помогите перевести рег. выражение с PHP на Python
1
rustamakhmetov
Задача разбить текст на предложения. Регулярное выражение на PHP рабочее.
или предложите готовые библиотеки способные разбивать текст(ру, англ.) на предложения.

Python 2.7

# coding: utf-8
# пример разделения текста на предложения

import re

text = "Плуг — сельскохозяйственное орудие для основной обработки почвы. Плугами также называются устройства для работы под водой, для прокладки кабелей, для подготовки земной поверхности перед звуковым зондированием и гидролокацией бокового обзора при поиске нефти. Первоначально плуги тащили на себе сами люди, затем волы, а ещё позже — лошади. В настоящее время в промышленно развитых странах плуг тянет за собой трактор."

#preg_match_all('#((?:(?-i)[А-Я]).*(?<=(?:[а-я\)\"\\\'\s]){2,})\.)#Uui',$text, $result);
result = re.split(r"((?:(?-i)[А-Я]).*(?<=(?:[а-я\)\"\\'\s]){2,})\.)", text)

print "Count proposal: %s" % len(result)
for x in result:
print "%s\n" % x
s0rg
text.split('.')
?
o7412369815963
s0rg
text.split('.')
?
В той регулярке ещё учитывается, что предложение начинается с заглавной буквы, иначе это точка для сокращения.
s0rg
Вопрос не читай - Ответ пиши! )
Сори - прочитал условие, а вот в регулярку не посмотрел.
Rodegast
Как то так:
 re.findall(r'["А-Я]...+?(?=.[",\s]+?[А-Я]|$)', text)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB