Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Replace

Fala pessoa!

Estou migrando do Eclipse para o VS Code e gostaria de tirar o máximo de proveitos dos recursos dessa ferramenta.

No caso, tenho um layout HTML onde os itens da página estão mapeados pelos diretórios físicos, e como estou usando Thymeleaf com Spring Boot eu gostaria de trocar o SRC="" por TH:SRC="@{/}", mantendo os paths das imagens entre as tags do thymeleaf.

Exemplo, dar um replace de

<img src="/imagens/foto01.jpg"/>
<img src="/imagens/foto02.jpg"/>

Para:

<img th:src="@{/imagens/foto01.jpg}"/>
<img th:src="@{/imagens/foto02.jpg}"/>

Sei que se eu entender e conseguir fazer isso conforme este exemplo, vai me abrir muitas outras possibilidades. Fico no aguardo, obrigado a todos!

1 resposta
solução!

Depois de fazer o curso de Regex com o professor Nico clarou as idéias.

Bom pessoal, finalmente consegui o que eu estava querendo. Pra ficar mais claro tive que que fazer e refazer um curso de regex, o negócio complicado viu! kkkkk Mas agora clareou, chega de ficar procurando expressões regex prontas na internet, de agora em diante eu mesmo vou escrever as minha (espero..rss) Fato é que depois de conseguir escrever o regex, consegui entender também o esquema de fazer o replace do Vs Code utilizando os grupos da expressão regulares, e assim consigo rescrever o destino do replace usando os grupos e substituindo o conteúdo deles. No VS Code, conseguimos rescrever um grupo da expressão usando o $ seguido do número do grupo. Segue exemplo: String Alvo

<div class="iq-sub-dropdown">
<a class="iq-sub-card" href="#"><img src="/images/small/flag-02.png" alt="img-flaf" class="img-fluid mr-2" />French</a>
<a class="iq-sub-card" href="#"><img src="/images/small/flag-03.png" alt="img-flaf" class="img-fluid mr-2" />Spanish</a>
<a class="iq-sub-card" href="#"><img src="/images/small/flag-04.png" alt="img-flaf" class="img-fluid mr-2" />Italian</a>
<a class="iq-sub-card" href="#"><img src="/images/small/flag-05.png" alt="img-flaf" class="img-fluid mr-2" />German</a>
<a class="iq-sub-card" href="#"><img src="/images/small/flag-06.png" alt="img-flaf" class="img-fluid mr-2" />Japanese</a>
</div>

Expressão Regular: (img.*src=")([/\w-.]+)(") Replace: $1@{$2}$3

<div class="iq-sub-dropdown">
<a class="iq-sub-card" href="#"><img src="@{/images/small/flag-02.png}" alt="img-flaf" class="img-fluid mr-2" />French</a>
<a class="iq-sub-card" href="#"><img src="@{/images/small/flag-03.png}" alt="img-flaf" class="img-fluid mr-2" />Spanish</a>
<a class="iq-sub-card" href="#"><img src="@{/images/small/flag-04.png}" alt="img-flaf" class="img-fluid mr-2" />Italian</a>
<a class="iq-sub-card" href="#"><img src="@{/images/small/flag-05.png}" alt="img-flaf" class="img-fluid mr-2" />German</a>
<a class="iq-sub-card" href="#"><img src="@{/images/small/flag-06.png}" alt="img-flaf" class="img-fluid mr-2" />Japanese</a>
</div>

Obs: Essa Regex também funciona caso o SRC não esteja logo após a abertura da tag IMG. Antes: <img class="avatar-40 rounded" src="/images/user/02.jpg" alt=""> Depois: <img class="avatar-40 rounded" src="@{/images/user/02.jpg}" alt=""> É isso aí, agora vou conseguir trocar os paths do meu layout aplicando as tags do Thyneleaf rapidamente, entre outras coisas legais que da pra fazer com o regex e o replace. Até mais!