2012-10-03 22 views
5

Tengo una cadena ingresada por el usuario en el cuadro de texto. Necesito insertar el carácter '#' en la cadena si el usuario no lo ingresó.¿Cómo insertar un carácter en un índice específico de cadena usando C#?

expected format : aaa#aa#a 

Este es el código para verificar y corregir el formato esperado: -

si el usuario introduce la siguiente: aaaaaa,

if (enteredtext.Length >= 7 && enteredtext.EndsWith(",")) 
      { 
       if (enteredtext.IndexOf('#', 3, 3) == -1) 
        enteredtext = enteredtext.Insert(3, "#"); 
       if (enteredtext.IndexOf('#', 6, 6) == -1) 
        enteredtext= enteredtext.Insert(6, "#"); 
      } 

Cualquier otra mejor manera de lograrlo?

+0

son las posiciones para el # conocido o desconocido? –

+0

sí se conoce .. exactamente como por el formato esperado aaa # aa # a – user1327064

+1

Entonces, ¿por qué comprueba "," al final si no está en el formato esperado? – Patrick

Respuesta

6

En lugar de if (enteredtext.IndexOf('#', 3, 3) == -1) sólo se puede hacer:

if(enteredtext[3] != '#') 
    enteredtext = enteredtext.Insert(3, "#"); 
Cuestiones relacionadas