Na verdade, eu até consegui fazer isso, mas eu queria aprender a configurar o comando o comando RegExMatch() para encontrar um determinado n.º de caracteres após uma palavra, independente de ser espaços em branco, traços, ou outro caractere. Por exemplo, certo código no terminal pode variar de tamanho, mas não ultrapassa um determinado número de caracteres, e o padrão final também pode mudar, as vezes termina em 0001 - 1 (com espaço separando os dígitos do traço) , e outras vezes 0001-1 (sem espaços separando os dígitos do traço.
Deixe eu mostrar um exemplo fictício do como pode aparecer no terminal (esse texto está num bloco de notas para testes):
código1: R1P1CD8 código2: BC2140100MR0160JB código3: 01254555555
Data emissao: 18 / 03 / 2021
CPF/CNPJ: 149.437.016-45
>>>>>>>> código4: 21301113663 - 1 <<<<<<<<<
E esse é o código que copia o texto e extrai os dados:
Code: Select all
^j::
Send,^a
sleep, 100
Send,^c
ClipWait,2
theData = %clipboard%
p := RegExMatch(theData, "i)código1: \K\w+\w\w\w\w", código1v)
MsgBox, % código1v
q := RegExMatch(theData, "i)código2: \K\w{17}+", código2v)
MsgBox, % código2v
r := RegExMatch(theData, "i)código3: \K\S+", código3v)
MsgBox, % código3v
s := RegExMatch(theData, "i)CPF/CNPJ: \K\S{14,20}", CPF_CNPJv)
MsgBox, % CPF_CNPJv
t := RegExMatch(theData, "i)código4: \K\d{10,16}\ \-\ \w+", código4v)
MsgBox, % código4v
return
Me perdoem se ficou confuso, sou novo nisso.
Desde já, agradeço.