Я извлек следующее предложение:
Очень важный момент. Это должно быть обсуждено на нашей следующей встрече.
из следующей строки:
ID: 1 x: 1202 y: 2453 w: 242 h: 459 wn: 13 ln: 12 c: Очень важный момент. Это должно быть обсуждено на нашей следующей встрече.
используя это QRegularExpression:
regularExpression.setPattern("(?<=\\s)c:\\s?(.*)$");
Тем не менее, вывод:
Очень важный момент. Это должно быть обсуждено на нашей следующей встрече.
Наличие \ r вполне нормально, потому что строка, с которой я работаю, записана в текстовом файле (операционная система Windows 8.1).
Знаете ли вы, как извлечь предложение, не имея «\ r» в результирующем выводе? Я действительно понятия не имею,.
Спасибо большое за вашу помощь
Вы можете достичь этого, используя класс отрицанных персонажей [^\r\n]
:
regularExpression.setPattern("(?<=\\s)c:\\s?([^\r\n]*)");
^^^^^^^^
[^\r\n]*
подшаблон соответствует нулю или более символов, кроме \r
а также \n
,
Других решений пока нет …