Números perdidos do Notepad ++ Regex apenas em substituição

Números perdidos do Notepad ++ Regex apenas em substituição

Sou razoavelmente novo no Notepad++ e nas expressões regulares, estou realmente lutando para resolver esse problema

0:6[105][56]
0:6[105][55]
0:6[105][54]
0:6[104][53]

?:?[??][??] -> onde os números podem ser qualquer coisa

Eu tentei usar o Find:

  • Encontrar (:)|(])
  • Substituir (][)|(->connectedwaypoints.push_back)

Isso não parece funcionar

abaixo está o meu resultado desejado.

WarpPoints[0]->paths_connected[6]->connectedwaypoints.push_back(HiFiWaypoints[105][56]);


WarpPoints[?]->paths_connected[?]->connectedwaypoints.push_back(HiFiWaypoints[?][?]);

? pode ser qualquer número, não quero substituir os números, mas todo o resto.

Responder1

Tente encontrar:

([0-9]):([0-9])(\[[0-9]+\]\[[0-9]+\])

E substitua por

WarpPoints[\1]->paths_connected[\2]->connectedwaypoints.push_back\(HiFiWaypoints\3\)\;

E o modo de pesquisa deve ser “Expressão regular”.

Explicado:

  • Para a parte de localização, [0-9]significa qualquer dígito \[e \]significa corresponder a qualquer um [e ]respectivamente. (e )fará com que qualquer coisa entre parênteses seja referida em "substituir por" como \1 \2etc.

  • Para a parte substituir por, é bastante autoexplicativo, onde \1está o conteúdo entre parênteses, \2sendo o conteúdo dentro do segundo par, etc.

Procure no Google "expressão regular" se não tiver certeza do que os outros símbolos significam.

informação relacionada