webForumDet fria alternativet

Problem med att ta bort delar av en sträng

C/C++

4 svar · 346 visningar · startad av juventus1

Medlem sedan dec. 2000399 inlägg
Frågan#1

Hej

Jag har ett störande problem som borde vara enkelt. Jag har en sökväg på formen "/dir/dir2/". Jag vill nu ta bort den sista '/' samt "dir2" från den strängen och få strängen "/dir/" som resultat. Hur gör man lättast (använder C)?

Medlem sedan juni 200010 432 inlägg
#2

Förklara mer. Är det alltid den sista "xxx/" du vill ta bort eller vad, i lite mer generella termer?

Medlem sedan dec. 2000399 inlägg
#3

Ja, det är alltid mönstret "xxx/" i slutet av en sträng som skall tas bort.

Medlem sedan juni 200010 432 inlägg
#4

Du kan ju testa med nåt sånt här:

int i;
char *p;
i=strlen(STRANGEN)-1;
p=&a[i];
while(*(--p)!='/' && i>0)i--;
*p=0;
Medlem sedan dec. 2000399 inlägg
#5

Tackar, det fungerar fint.

266 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
131 ms — ändringar (db)