
Estou escrevendo um artigo que contém expressões Regex
usou a expressão regular “(?<=|)\d*/\d*/\d*” para encontrar as datas dos relatórios.
Tentei usar backspash antes de cada caractere na expressão regex mas não funciona
Tentei agrupar o regex com $$ mas ainda não funciona
como fazer isso?
Responder1
Regex usa muitos caracteres diferentes, por isso é difícil inseri-lo corretamente. Se você pudesse encontrar um caractere que não estava usando, poderia usar \verb
which funciona para escolher um delimitador e colocar o código entre ele. Então, se você não precisasse do caractere de pipe, você poderia fazer \verb|[0-9A-Fa-F]|
e ele seria exibido [0-9A-Fa-f]
. Mas, como visto no seu exemplo, o caractere de barra vertical é muito usado, então você teria que escolher outra coisa. Talvez um ponto de exclamação. Então \verb!(?<=|)\d*/\d*/\d*!
apareceria como (?<=|)\d*/\d*/\d*
. Você teria que descobrir o que funciona para cada caso.
Como o comentarista mencionou, há também um pacote chamado listagens que é mais robusto, mas não funciona muito bem para código embutido como no seu exemplo.
Responder2
Se você estiver usando biblatex
mesmo assim, você também pode usar seu \regexp{}
comando como uma solução pronta para uso.
Sequências de escape Perl como \t para uma tabulação, \n para uma nova linha, \A para o início de uma string ou \d para um dígito podem ser usadas, sem que o TEX tente executá-las como comandos, assim como caracteres especiais como ^ , _ ou e #. Somente % deve ser protegido: para corresponder a um único % no babador, use % na expressão regular, % é correspondido por \%.