webForumDet fria alternativet

Replace

6 svar · 392 visningar · startad av Vide

VideMedlem sedan dec. 19996 094 inlägg
#1

Hejsan igen ;)

Finns det någon Replace-funktion som fungerar på strängar (alltså inte Char eller via RegEx)... försöker jag använde metoden Replace på en sträng och försöker ersätta två strängar (fler än en bokstav), så får jag felmeddelandet att jag ger fel argument...

Mvh, Vide

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

GrynetMedlem sedan maj 2001329 inlägg
#2

Av någon anledning så finns det bara en Replace funktion och denna byter bara ut char mot char i en sträng. Så vad man får göra är helt enkelt Insert och Remove.

------------------
//Grynet

VideMedlem sedan dec. 19996 094 inlägg
#3

Ah, oki...

Är det då mer prestandakrävande att använda sig utav RegEx än den metoden du angav?

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

GrynetMedlem sedan maj 2001329 inlägg
#4

Nej det tror jag inte..hade faktiskt aldrig sett RegEx förut :)

------------------
//Grynet

VideMedlem sedan dec. 19996 094 inlägg
#5

hehe... oki...

Jaja, får väl bygga en egen Replace-class, som man kan göra lite mer med... ;)

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

SweyMedlem sedan apr. 20002 000 inlägg
#6

Använd StringBuilder. Det är en dynamisk sträng till skillnad mot string som är statisk. Varje gång du vill förändra en string måste en ny allokeras. Därför finns Replace-funktionen endast i StringBuilder.

RegExp ska du undvika om du inte behöver det eftersom det kräver mycker mer prestanda än en vanlig sök och ersätt-funktion.

------------------
- Swey
A hacker from the south

VideMedlem sedan dec. 19996 094 inlägg
#7

Aha, där ser man... tackar för det... :)

------------------
Vide rox = new Vide();
rox.learn("C#");

webeye.nu

Genererad på 374 ms · cache AV · v20260730165559-full.f96bc7eb