Ich habe eine lange QString
namens text
, und ich bin auf der Suche nach alle Wörter darin, die ihren ersten Buchstaben in Großbuchstaben haben extrahieren. Gibt es eine Möglichkeit, die Methode QString::split()
zu verwenden, um jedes Wort einzeln zu testen? Oder sogar eine Möglichkeit, es zu tun, ohne text
teilen zu müssen?Qt - Extrahieren von Wörtern mit dem ersten Buchstaben in Großbuchstaben von einem QString
2
A
Antwort
0
Was:
QString text = "Text is long. Or maybe longer. Yay!";
QRegularExpression regexp("[A-Z][^A-Z]*");
QRegularExpressionMatchIterator match = regexp.globalMatch(text);
QVector<QString> vec;
while(match.hasNext())
vec.append(match.next().capturedTexts());
Der reguläre Ausdruck paßt alles von einem Großbuchstaben nach vorne bis zum nächsten Großbuchstaben. Dann, da Sie alle Übereinstimmungen wollten, durchlaufen Sie sie und speichern sie auf QVector<QString>
(oder QStringList
, wenn Sie es wünschen, obwohl es von der Verwendung abgeraten wird).
0
Ohne Spaltung:
QRegExp rx("\\b[A-Z]\\w+\\b"); // Or "\\b[A-Z]\\w*\\b" if you want to include one-character words
int pos = 0;
while ((pos = rx.indexIn(text, pos)) != -1)
{
QString your_word = rx.cap(); // every word is here
pos += rx.matchedLength();
}
+0
'QRegExp' ist veraltet und ist nur aus Gründen der Abwärtskompatibilität Teil von Qt. Es sollte nicht in neuem Code verwendet werden ... – Resurrection
Verwandte Themen
- 1. PHP Großbuchstaben ersten Buchstaben aus dem ALPHABET
- 2. Machen Sie den ersten Buchstaben Großbuchstaben in einem Django-Template
- 3. Linux Umbenennen Befehl Großbuchstaben ersten Buchstaben
- 4. Git machen Dateiname den ersten Buchstaben Großbuchstaben
- 5. Ersetzen ersten Buchstaben des Satzes in HTML-Tags mit Großbuchstaben
- 6. VBScript - Großbuchstaben ersten Buchstaben jedes Wortes
- 7. Großbuchstaben ersten Buchstaben eines XML-Elements
- 8. Breite von getrennten Buchstaben in zusammengesetzten Wörtern von arabischem Inhalt
- 9. Ganzzahlen aus QString extrahieren
- 10. Wie fügt man in Python ein Leerzeichen vor dem ersten Buchstaben von fortlaufenden Großbuchstaben ein?
- 11. Controller und Service mit den ersten beiden Buchstaben Großbuchstaben
- 12. Wie man einen ersten Buchstaben Großbuchstaben in C#
- 13. Erstellen ersten Buchstaben jedes Wortes Großbuchstaben mit einer Bedingung
- 14. Returning ersten Buchstaben von NSString groß geschrieben
- 15. Konvertieren ersten Buchstaben jedes Wortes in Großbuchstaben in JS
- 16. Java ArrayList Suche mit dem ersten Buchstaben
- 17. Erstellen QString-Array von zwei Dimensionen mit QVector mit Qt
- 18. Qt QString lastIndexOf funktioniert nicht
- 19. Qt: QString in Hexadezimal konvertieren
- 20. Großbuchstaben ersten Buchstaben des Nachnamens in Spalte einer Tabelle
- 21. C++ Qt zurückgeben QString
- 22. Sortieren Array von Wörtern - nicht-Englisch Buchstaben + Doppelzeichen Buchstaben PHP
- 23. Probleme mit einem Vektor von std :: threads in C++ 11 Bigramme von Buchstaben und Wörtern zählen
- 24. Bibliothek zum Extrahieren von Wörtern (Sprache) aus dem Audio-Stream?
- 25. Großbuchstaben den ersten Buchstaben jedes Wortes in einem Dateinamen mit Powershell
- 26. Sublime Text - Schnipsel mit Kapitalisierung von param ersten Buchstaben
- 27. QString von Punycode QUrl
- 28. Extrahieren von N Wörtern aus einer Zeichenfolge in Bourne Shell
- 29. Regex Großbuchstaben bestimmte Buchstaben
- 30. Wie bekomme ich QString von QListView ausgewählten Artikel in Qt?
Regulärer Ausdruck. In Qt können Sie beispielsweise die Klasse QRegularExpression verwenden. Um Ihren Ausdruck zu erstellen, empfehle ich https://regex101.com/ online regexp editor. – Resurrection