J'ai la ligne Qstring comme celle-ci "567 \ n1.23456 2.34567 \ n1.23456 2.34" p>
et je ne veux que des numéros de flotteur "entiers" uniquement entre \ n caractères. p>
J'ai besoin de qstringlist après J'ai essayé Split () Code> qui ne contient que ce nombre de flotteurs.
qstring :: Split () code> peut utiliser regex afin que je puisse peut-être utiliser som regex ici. p>
qstringlist myList = qstring ("56 \ n1.12345 2.34567 \ n1.23456 2.34"). Split ('\ n') code> qui me renvoie ["1.2345 2.34567"] alors je besoin de diviser à nouveau sur ["1.23456"] et ["2.34567"] p>
3 Réponses :
Cette regex \ d + (\ \ \ d +)? code> vous donnera n'importe quel numéro flottant / int! P>
Vous devez diviser à qregularexpression ("\\ s +") code>.
\ s code> signifie WhitSpace (qui inclut les deux
code> = espace et
\ n code> = nouvelle ligne),
+ code> signifie un ou plusieurs et vous devez échapper à la barre oblique inverse. P>
La documentation QT pour qstring :: Split a votre réponse
Oui et après la scission, j'ai 56, 1.12345 2.34567 1.23456 2.34, mais je n'ai besoin que de numéros de flotteurs entourés de caractères "\ n".
Ensuite, utilisez Split deux fois ... une fois que vous utilisez QCHAR ('\ n'), puis utilisez QCHAR ('') ou Qregularexpression («\\ s +») en fonction de la fiabilité de la blancheur entre les floats.