Извлечение ТОЛЬКО определенных частей регулярного выражения ‘выражение’

У меня есть список выражений, которые я хотел бы проверить, и извлечь определенные части.
Эти выражения могут иметь любую комбинацию:

  • Строковые литералы (возможно, экранированные, но не обязательно), обозначенные одинарными кавычками
  • Любое количество символов которые НЕ строковые литералы и
    не символ конца строки, обозначаемый точкой с запятой

Допустимые выражения начинаются после двоеточия и заканчиваются точкой с запятой.
Пример правильного выражения:

: This is an *expression* 'with' and 'without \'escaped\' string literals',
which ends with a semicolon!;

И из этого выражения я хотел бы извлечь:

  • This is an *expression*
  • 'with'
  • and
  • 'without \'escaped\' string literals'
  • , which ends with a semicolon!

Это возможно?

0

Решение

Говорил с RectangleEquals, ответ — std :: regex re _ («‘(?: \\. | [^’]) * ‘| [^’] +»);

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]