2012-10-03 4 views
5

Ich habe eine Zeichenfolge vom Benutzer in das Textfeld eingegeben. Ich muss char '#' in die Zeichenfolge einfügen, wenn nicht vom Benutzer eingegeben. HierWie fügt man mit C# ein Zeichen in einen bestimmten Index ein?

expected format : aaa#aa#a 

ist der Code zu überprüfen und zu korrigieren, das erwartete Format: -

, wenn der Benutzer diese eingegeben: 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, "#"); 
      } 

Jede andere beste Weg, es zu erreichen?

+0

Sind die Positionen für die # bekannt oder unbekannt? –

+0

ja bekannt .. genau nach dem erwarteten Format aaa # aa # a – user1327064

+1

Dann warum suchen Sie nach "," am Ende, wenn es nicht im erwarteten Format ist? – Patrick

Antwort

6

Statt if (enteredtext.IndexOf('#', 3, 3) == -1) Sie können einfach tun:

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