Como escrever expressões Regex em LATEX

Como escrever expressões Regex em LATEX

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 \verbwhich 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 biblatexmesmo assim, você também pode usar seu \regexp{}comando como uma solução pronta para uso.

Dedocumentos biblatex

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 \%.

informação relacionada