Portál AbcLinuxu, 13. května 2025 20:44
"protocol://nejaka/cesta/soubor.ext"
vcetne uvozovek, kde protocol je bud http nebo ftp. Zkouzel jsem QRegExp:
QRegExp regexp("\"(ftp|http)://(.*)\""); QString mystring("This is \"http://moje/http.png\" and this is \"ftp://moje/ftp.png\""); int pos = regexp.indexIn(mystring); qDebug() << pos; qDebug() << regexp.cap(0); qDebug() << regexp.cap(1); qDebug() << regexp.cap(2);Ale vysledek je spatny:
8 "\"http://moje/http.png\" and this is \"ftp://moje/ftp.png\"" "http" "moje/http.png\" and this is \"ftp://moje/ftp.png"cap(1) by mel byt ten protokol a cap(2) napr to
moje/http.png
Řešení dotazu:
regexp.setMinimal(true);
a uz to funguje.
"\"(ftp|http)://(.*?)\""
), prípadne sa dá na miesto toho (.*)
použiť niečo ako ([^\"]*)
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.