Seite 1 von 1

Text in QTextEdit auswählen

Verfasst: 7. Juli 2007 14:34
von sea_bear
Hallo!

Also, ich versuche zur Zeit in einem TextEdit einen Textteil zu finden und dann in ein QString zu kopieren. Genauer gesagt möchte ich den Teil kopieren, welcher zwischen zwei Tags steht. Also die z.B. den Zeitstempel zwischen den Tags.

Code: Alles auswählen

<time>2007-07-06T15:57:36Z</time>
Mein Code sieht bis jetzt wie folgt aus:

Code: Alles auswählen

   textEdit->find("<time>");
   int pos1 = textEdit->textCursor().position();
   textEdit->find("</time>");
   int pos2 = textEdit->textCursor().position();
   textEdit->textCursor().clearSelection();
   textEdit->textCursor().setPosition(pos1,QTextCursor::MoveAnchor);
   pos1 = textEdit->textCursor().position();
   textEdit->textCursor().movePosition(QTextCursor::Right,QTextCursor::KeepAnchor,(pos2-pos1));
   QString TIMETAG = textEdit->textCursor().selectedText();
Leider funktioniert das einfach nicht. Ich bekomme immer nur "</time>" als Ergebnis!!
Was mache ich falsh, bzw. wie mache ich es richtig?

Ich nutze OpenSuse 10.2 mit Qt4 und KDevelop

mfg
Tobias

Verfasst: 9. Juli 2007 07:22
von macman
Schon mal was von Regular Expressions gehört? Mit QRegExp geht das deutlich einfacher, als die Klimmzüge mit denen Du versuchst zum Ziel zu erreichen.
http://doc.trolltech.com/4.3/qregexp.html#cap