Preciso de um regex para corresponder à maior string (dentro de uma string) com no máximo 5 caracteres, mas o último caractere deve ser uma letra X.
Por exemplo, quero que as strings abaixo sejam convertidas para:
abXdef -> abX
abcdX-> abcdX
aXcdXf-> aXcdX
Estou usando PHP (mas você pode usar qualquer outra linguagem, sem problemas) e até agora descobri isto:
preg_replace("/^(.{4})X.+$/","$1","abcdXef");
Mas só funciona se X
estiver exatamente na quinta posição. Alguma ideia de como posso consertar isso?
Tentar
[a-zA-Z]{0,4}
: 0-4 letras precedendo o...X
: ...letra exata XVeja: https://regex101.com/r/GRXz8L/latest
Usando regex101 eu descobri isso
Fiz uma edição para obter também letras maiúsculas