[C++] System::String zerlegen

DadyCool

Well-known member
ID: 81813
L
30 April 2006
601
19
Hi,

ich habe mal wieder ein Problem.

Ich habe einen String^ in dem der folgende Text steht

PHP:
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Date: Wed, 06 Aug 2008 13:23:47 GMT
Expires: -1
Content-Type: text/html; charset=UTF-8
Set-Cookie: SS=Q0=aW5mbzp3d3cuaGVpc2UuZGUvbmV3c3RpY2tlcg; path=/search
Set-Cookie: PREF=ID=d3af5b370eaac5ff:TM=1218029027:LM=1218029027:S=0dGO0aVXO_Usb
4xX; expires=Fri, 06-Aug-2010 13:23:47 GMT; path=/; domain=.google.com
Server: gws
Transfer-Encoding: chunked
Connection: Close

b
Rank_1:1:7

0

Ich möchte jetzt nur die 7 in einen anderen String speichern, kann jedoch nicht wirklich was finden. Habe es schon mit Split und substr versucht.

Hat jemand eine Idee?

DadyCool
 
wenn die Zeilenanzahl konstant ist kannst du doch nach "\n" zerlegen, das 13 Element abgreifen und das auch zerlegen8)
ich weiss grad nicht ob die Cpp-Bibliotheken etwas vergleichbares wie explode() bei PHP liefern, aber das kannst du dir ja selbst auch basteln. Oder einfach 1 Schleife und nach dem 13. Vorkomen von "\n" ermittelst du halt deinen ZeilenInhalt
 
wenn die Zeilenanzahl konstant ist kannst du doch nach "\n" zerlegen, das 13 Element abgreifen und das auch zerlegen8)
ich weiss grad nicht ob die Cpp-Bibliotheken etwas vergleichbares wie explode() bei PHP liefern, aber das kannst du dir ja selbst auch basteln. Oder einfach 1 Schleife und nach dem 13. Vorkomen von "\n" ermittelst du halt deinen ZeilenInhalt

hmm ist leider nicht konstant
 
dann helfen dir vllt regulaere Ausdruecke, weiss nicht ob Cpp-Bilbliotheken solche Mittel anbieten, aber dann brauchst du auf jeden fall ein brauchbares Kriterium nach dem du suchen kannst.

;) viel Glueck weiterhin
 
Zerlege doch wie der Vorredner sagt nach Zeilen, und durchlaufe diese. Suche dann nach einem Vorkommen. Zum Beispiel von -> Rank_1

Diese Zeile kannst du dann zerlegen und prüfen ob diese einen Sinn ergibt (ins Schema passt).

PHP:
#include <string>
#include <iostream>
using namespace std;

void splitstring(string str, string seperater, string &first, string &second) 
{
     int i = (int)str.find(seperater); 
     if(i != -1)
     {
          int y = 0;
          if(!str.empty())
          {
               while(y != i)
               {
                    first += str[y++]; 
               }
               y = y+(int)seperater.length();
               while(y != str.length())
               {
                    second += str[y++]; 
               }
               
          }
     }
     else
     {
          first = str;
          second = "NULL"; 
     }
}

void main()
{
      stirng a, b, c;
      a.assign("Dein String der zerlegt werden soll");
      splitstring(a, "\n", b, c);
}

//usw...
 
Zuletzt bearbeitet:
THX, habe das jetzt aber anders gelöst. Die Ausgabe ist doch immer gleich und habe es dann mit Substring gelöst

DANKE