Есть два способа решить эту проблему, в зависимости от того, что вы хотите делать с выходом.
Сначала сопоставьте (но не фиксируйте) текст в кавычках. (Это , в частности , соответствующая тому, что вам НЕ нужно.) Используя трубу |
, используйте группы захвата, чтобы выбрать все, что вы хотите сохранить.
Пример :
".*?"|(\b\S+\b)
Вы можете увидеть пример этого здесь .
Другой вариант, используя look-arounds, - это специально оглянуться назад начало слов, чтобы убедиться, что "
не появляется там:
(?
Вы можете видеть, что здесь .
Это может иметь проблема при запуске нескольких слов, но это должно привести вас к правильному пути, и вы можете указать, работает ли один из этих методов лучше для вас, чем другой.