Regex да съвпада с "но не" - регекс

Винаги съм напълно в загуба с регреси, така че се надявам някой тук да помогне.

Joomla използва този regex за потвърждаване на редове от ini файлове:

/^(|([[^]]*])|([A-Z][A-Z0-9_-]*s*=(s*(("[^"]*")|(_QQ_)))+))s*(;.*)?$/

Редовете имат такъв формат

JLIB_LOGIN_AUTHENTICATE="Username and password do not match or you do not have an account yet."

очевидно " не може да бъде позволено в стойността, но. \ t " може да бъде. Понастоящем това е съчетано с горните регреси. Виждам как е съвпаднало, но не мога да променя регламента да не съвпада ", Опитах се да добавя |(Q"E)на различни места, но няма късмет.

Отговори:

6 за отговор № 1

Променете това:

"[^"] * "

До това:

"(\" | [^ "]) *"

Вижте как работи онлайн: ideone


3 за отговор № 2

замени [^"] с ([^"]|(\"))