[Batch] - Reemplazar caracter "-" por espacio en blanco en una variable

Iniciado por dpedregosa, 3 Agosto 2017, 12:26 PM

0 Miembros y 1 Visitante están viendo este tema.

dpedregosa

Hola buenas, soy bastante nuevo en esto, a ver si alguien me puede echar una mano.

Tengo una variable que contiene la cadena "solitaire-beach-season-3" y me gustaría modificar esa variable de modo que quedara "solitaire beach season 3". O sea reemplazar los guiones por espacios en blanco.

¿Me podéis ayudar? gracias!


Eleкtro

Código (dos,4) [Seleccionar]
@Echo OFF

Set "var=solitaire-beach-season-3"
Set "var=%var:-= %"

Echo:"%var%"

Pause
Exit


Saludos








dpedregosa

Muchas gracias, lo había acabado yo tb encontrando después de buscar un rato. Lo que no consigo ahora es hacer lo mismo pero sustituir el caracter "-" por "%_%" ¿como sería posible esto?

O sea lo que quiero es convertir la variable que contiene "solitaire-beach-season-3" a otra que contenga "solitaire%_%beach%_%season%_%3"

Supongo que será una tontería pero al tener el % no puedo re-utilizar el ejemplo anterior que me pusiste.
Set "var=%var:-=%_%%" (no funciona)

Un saludo.

Eleкtro

Ten en cuenta que el caracter % está reservado para el lenguaje que delimita el inicio y el fin de una variable, por lo tanto eso que has intentado hacer te va a fallar...

...Pero eso puedes evitarlo utilizando la expansión de variables:

@Echo OFF & SetLocal EnableDelayedExpansion

Set "var=solitaire-beach-season-3"
Set "var=!var:-=%%_%%!"

Echo:"%var%"

Pause
Exit /B 0


Saludos!








dpedregosa