У меня проблемы с созданным регулярным выражением.
Мне нужно регулярное выражение для сопоставления со следующими примерами, а затем под совпадение в первой строке в кавычках:
Входные строки
("Lorem ipsum dolor sit amet, consectetur adipiscing elit.")
('Lorem ipsum dolor sit amet, consectetur adipiscing elit. ')
('Lorem ipsum dolor sit amet, consectetur adipiscing elit. ', 'arg1', "arg2")
должен соответствовать матч
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
До сих пор регулярное выражение:
\((["'])([^"']+)\1,?.*\)
Регулярное выражение выполняет подстатью по тексту между первым набором кавычек и возвращает отображаемое выше подстандартное совпадение.
Это почти идеально работает, но у меня проблема в том, что если строка в кавычках содержит кавычки в тексте, то субсоответствие останавливается в первом случае, см. Ниже:
Ошибка ввода строк
("Lorem ipsum dolor \"sit\" amet, consectetur adipiscing elit.")
Только подстроки: Lorem ipsum dolor
("Lorem ipsum dolor 'sit' amet, consectetur adipiscing elit.")
Весь матч не удался.
Примечания
Входные строки на самом деле являются вызовами функций кода php. Я пишу скрипт, который будет сканировать исходные файлы .php для определенной функции и извлекать текст из первого параметра.