2012-05-15 3 views
0

У меня есть следующее регулярное выражение:Регулярное выражение, соответствие слов в предложении

.*?\b(случајот)\b. 

И я не понимаю, что мне нужно. Я хочу получить предложение, в котором это слово появляется, но когда я пытаюсь получить предложение в конце текста, я получаю весь текст. Поэтому мне нужен совет, как получить предложение между двумя полными остановками с совпадающим словом.

Я использую python и RegexBuddy для тестирования. Пример:

**случајот** кај веќе сериозен политички и безбедносен инцидент јас на веќе гледам како на политички и безбедносен настан. 

Он просто подчеркивает только слово.

cell= db_conn.use_client().hql_query(db_conn.use_namespace(),"SELECT * FROM SE_doc_text WHERE ROW=     \"da687a08e348c6791cbcc07c9a3057ef6473910b797839adabb0193e\" SCAN_AND_FILTER_ROWS LIMIT 1").cells 
#print cell[0].value 
print "==============================" 
text_nparsed = re.split(r"([^\.]*\bдаме\b[^\.]*)\.", cell[0].value.replace("\\'","'")) 
return text_nparsed 
+0

Вы можете публиковать код, который вы используете, только соответствующая часть, конечно, но это помогает людям понять, что вы можете делать неправильно. – pcalcao

ответ

1

я думаю, что вы хотите ([^\.]*\bслучајот\b[^\.]*)\.

, который выбирает что-либо без "" который включает в себя изолированное слово, за которым следует «.».

+0

Да, tnx много, я должен проверить, что я сделал не так, и больше узнать о regex. – badc0re

+0

Не могли бы вы помочь мне с применением регулярного выражения на python, потому что я пытался, и я получаю весь текст, а не предложения. – badc0re

+1

Вы используете 'r '([^ \.] * \ Bслучајот \ b [^ \.] *) \." 'Чтобы указать регулярное выражение? если вы не используете 'r', вам нужно удвоить' '' s. –

Смежные вопросы