Não corresponde a espaço em branco no final da linha

1

Quando uso expressões regulares para substituir espaços em branco, \ s também corresponde ao final de uma linha e não apenas ao espaço em uma linha. Como retifico isso para substituir apenas os espaços em branco em uma linha.

A última palavra
fonte
Qual sintaxe de regex você está usando? POSIX? POSIX estendido? Perl / PCRE? Python? JavaScript? Etc.
grawity
@grawity Estou usando o bloco de notas ++
The Last Word

Respostas:

0

\ssignifica qualquer tipo de espaço em branco, ou seja. espaço simples, tabulação, quebra de linha ...

Você pode usar \hpara o espaço horizontal: espaço ou tabulação.

Se você deseja corresponder apenas espaços entre as palavras, pode usar: (?<=\S)\h+(?=\S)

Onde

  • (?<=\S) é um aspecto positivo que garante um espaço em branco antes
  • (?=\S) é uma visão positiva que garante que não haja espaço em branco depois.
Toto
fonte
0

Você pode corresponder aos caracteres em branco específicos que deseja, em vez de selecionar todos os caracteres em branco.

Por exemplo, para corresponder a um ou mais espaços e guias, use [ \t]+. Observe que o espaço AND \ t corresponderá.

RedEight
fonte
Eu acredito que você não entendeu a pergunta. Eu preciso combinar o espaço entre as palavras. Não corresponde a todos os espaços em branco.
A Última Palavra
Você pode estar procurando ([ \t]+)(\S). Isso deve deixá-lo localizar e substituir usando o padrão de substituição \t\2e obter guias onde você quer
RedEight