Java Regex для соответствия заключенной в кавычки строке с завершенными кавычками

Я знаю, что уже существует много вопросов как мои, но я не нашел ответа, который работает в Java. Таким образом, я пишу новый вопрос.

У меня есть текстовые файлы с содержанием как это:

key1 = "This is a \"test\" text with escapes using '\\' characters";
key2 = 'It must work with \'single\' quotes and "double" quotes';

Мне нужно регулярное выражение, которое соответствует значениям в двойных кавычках (или одинарные кавычки). Это регулярное выражение должно поддерживать завершенные кавычки и вышло из обратных косых черт. Регулярное выражение должно работать со стандартом Java классы Pattern/Matcher.

7
задан kayahr 23 March 2010 в 09:15
поделиться

1 ответ

Попробуйте это регулярное выражение:

'([^\\']+|\\([btnfr"'\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*'|"([^\\"]+|\\([btnfr"'\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*"

И как строковый литерал:

"'([^\\\\']+|\\\\([btnfr\"'\\\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*'|\"([^\\\\\"]+|\\\\([btnfr\"'\\\\]|[0-3]?[0-7]{1,2}|u[0-9a-fA-F]{4}))*\""
8
ответ дан 7 December 2019 в 05:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: