Quero colocar a primeira palavra entre colchetes e o "qualquer coisa" que segue após o espaço entre colchetes também.
Infelizmente o comando: (\w) (.*)
não funciona.
Por exemplo, para a frase "Como combinar uma palavra seguida por qualquer coisa", ela corresponderá a "w para combinar uma palavra seguida por qualquer coisa"
Responder1
\w
representa uma palavrapersonagem, nem uma palavra no sentido que você quer dizer. Ou seja, uma única letra, de az e AZ.
Para atender às suas necessidades, especifique ^(\w+) (.*)$
.
Isso se divide em:
^
- O início de uma string
(
- Comece um grupo de captura
\w
- Qualquer caractere que corresponda a az ou AZ
+
- Pelo menos 1 ou mais do tipo anterior
)
- Encerre nosso grupo de captura
- Um personagem espacial
(
- Comece nosso segundo grupo de captura
.
- Qualquer caractere que não seja de nova linha
*
- 0 ou mais do tipo anterior
)
- Encerrar o grupo de captura
$
- Fim da corda
Isso corresponderá, usando sua frase de exemplo How to match a word followed by anything
, Grupo 1 = How
e Grupo 2 =to match a word followed by anything
Supondo que você queira remover a primeira palavra, agora você pode usar \2
no campo de substituição, para substituir todas as correspondências por tudo menos a primeira palavra.
Ou, olhando para sua primeira frase novamente e você deseja realmente colocar colchetes ao redor da primeira palavra e depois do resto da frase, substitua por \(\1\) \(\2\)
- isto é, literal left parenthesis
, capture group 1
, literal right parenthesis
, space
, literal left parenthesis
, capture group 2
, literal right parenthesis
.