Eu tenho brincado rx
ultimamente, e eu notei que existem (pelo menos) três maneiras diferentes de indicar espaços em branco em expressões regulares.
[:blank:]
[:space:]
\s-
Quais são as diferenças entre cada um deles? Depende do modo principal?
regular-expressions
syntax
Malabarba
fonte
fonte
[:space:]
e\s-
são iguais.)C-h i
, manual ElispC-s [:space]
,.;)
Respostas:
A
[:blank:]
classe de caracteres corresponde apenas aos caracteres SPC e TAB. Os outros dois correspondem a espaço em branco com base na tabela de sintaxe ativa.Não parece haver uma diferença entre
[:space:]
e\s-
. Este último é um exemplo do geral \ s código padrão para correspondência com base numa classe de sintaxe.fonte
regexp-builder
eu posso confirmar que ambos[:space:]
e\s-
combinar os caracteres adicionais como espaços.