Acho que isso será feito para você:
grep -oP "(?<=['\"]|qq{)[xp/c][^\']+" ./index.epl
Isso diz:
-o
Mantenha apenas a parte correspondente.
-P
Use o estilo regex Perl (precisamos disso para o lookbehind)
"..."
Use aspas duplas, já que você não pode escapar do single dentro do <único < br> (?<=...)
Inicia um grupo lookbehind positivo. Isso significa que o que quer que combinemos muito também tem esse padrão logo antes, mas o "antes da parte" não faz parte do padrão que queremos manter.
[\'\"]
Coincidir com um dos: simples ou dupla citação
|qq{
OU corresponde à cadeia literal 'qq {'
Depois de encontrar essa correspondência de padrão:
[xp/c]
Corresponde a um dos x, p, / ou c. (Isso não é tão bom, mas você tem um pequeno número de casos para verificar.) [^
] + 'Qualquer coisa que não seja um backtick, 1 ou mais vezes
EDITAR: Se você quiser que as aspas simples ou duplas façam parte do padrão, será um pouco mais complicado, já que você não quer que o qq{
seja incluído de nenhuma maneira. .