Saludos a tod@s,
antes que nada, muy bueno el tuto, muchas gracias por compartir.
Ahora el mangazo:
Tengo un problema al reemplazar parte del contenido de una variable, el problema surge por que lo que quiero poner contiene un "%".
Basicamente es reemplazar el "@" de un correo por un "%40".
Tengo esto:
set correo=yo@gmail.com
set correo=%correo:@=%40%
Por supuesto que esto no funciono, ya que al encontrar el "%" despues del "=" asume que termino el reemplazo y simplemente me elimina el "@" agregandole al final el "40"
Intente con:
set correo=yo@gmail.com
set correo=%correo:@=%40%
...
set correo=%correo:@=%%40%
...
set correo=%correo:@=%%%40%
Sin poder lograrlo, tambien intente usando una variable auxiliar con el valor "%40" pero siempre lo mismo.
La solucion que me queda me parece muy trucha, es ir preguntando caracter por caracter si es el "@" y una vez encontrado crear una nueva variable concatenando lo anterior al "@" con el "%40" y lo posterior al "@"...
Pero la verdad me parece una solucion muy trucha, por eso pregunto a quien sabe para aprender mas y hacer las cosas mejor.
Ya me parece mas que trucho lo que hice para a una variable asignarle el contenido de otra variable cuyo nombre era el contenido de otra variable... (parece un trabalenguas, verdad?).
@echo on & setlocal enableextensions disabledelayedexpansion
call:CargaVariables
cls
set Respuesta=
echo 0 - Salir
echo 1 - %Jugador1%
echo 2 - %Jugador2%
echo 3 - %Jugador3%
...
set /p Respuesta=Selieccione su opcion:
set JugadorElejido=set JugadorElejido^=%%Jugador%Respuesta%%%
%JugadorElejido%
call:ProcesoPrincipal %JugadorElejido%
if (%errorlevel%)==(1) goto:eof
%0
goto:eof
:CargaVariables
set Jugador1=Jose
set Jugador2=Miguel
set Jugador3=Marcela
...
goto:eof
:ProcesoPrincipal
if (%1)==() echo. & echo Saliendo... & echo. & pause & set errorlevel=1 & goto:eof
rem aca esta todo lo que hace en si el programa...
...
goto:eof
Desde ya, muchas gracias por la ayuda.