De acordo com Pickaxe :
^
Corresponde ao início de uma linha.
$
Corresponde ao final de uma linha.
\A
Corresponde ao início da string.
\z
Corresponde ao final da sequência.
\Z
Corresponde ao final da sequência, a menos que a sequência termine com a "\n"
, caso em que corresponde imediatamente antes de "\n"
.
Então, use \A
e em minúsculas \z
. Se você usar \Z
alguém, pode se infiltrar em um caractere de nova linha. Acho que isso não é perigoso, mas pode estragar algoritmos que assumem que não há espaço em branco na string. Dependendo da sua expressão regular e das restrições de comprimento, alguém pode usar um nome invisível com apenas um caractere de nova linha.
A implementação do Regex por JavaScript trata \A
como um literal 'A'
( ref ). Portanto, observe-se lá fora e teste.