Russian Qt Forum

Qt => Общие вопросы => Тема начата: Alexander от Февраль 08, 2010, 11:03



Название: Синтаксическая декомпозиция текста при помощи QRegExp
Отправлено: Alexander от Февраль 08, 2010, 11:03
Здравствуйте!

Буду рад, если кто поможет разобраться с рядом вопросов:

Входной текст необходимо разбить на предложения и хранить их в виде списка или таблицы. Разбиваю текст при помощи простого регулярного выражения и функции split от QStringList'а:

Код:
QRegExp rxp ("[\Q.!?\E]{1,}\\s+|\Q?!\E\\s+|\Q!?\E\\s+");
TSplitter = MText.split(rxp);

Соответственно в результат выводятся предложения разбитые по точкам, вопросительным и восклицательным знакам, НО без самих этих знаков. Вопрос №1: можно ли используя подобные рег. выраж. как-то выводить предложения со знакаи пунктуации в конце? Вопрос №2: как можно организовать при помощи рег. выраж. проверку условий? Например, "если за аббревиатурой 'Mr.' следует пробел и заглавная буква, то это конец предложения". И так же с десятичными числами типа 1.3