Donc dans une autre partie de mon programme j'ai lu diverses URL de mon navigateur. Dites que j'ai http://www.example.com
ainsi que http://example.com
et https://example.com
. Pour un navigateur, ces trois URL sont différentes. Pour moi, seul le domaine de base (example.com
) est important.Supprimer `www.` de QUrl dans Qt 5.5
J'essaye maintenant de dépouiller le www
du domaine, cependant, ne peux pas réussir. Je voudrais le faire en utilisant la bibliothèque fournie QUrl au lieu de vérifier si la chaîne inclut un www.
et l'enlever après. Comme vous pouvez le voir, c'est plus une décision de conception ici;)
Voici mon application actuelle.
main.cpp
#include <QApplication>
#include <QDebug>
#include <QUrl>
#include <QList>
int main(int argc, char *argv[])
{
QList<QUrl> urlList;
urlList << QUrl("http://example.com/qwe/whoami/123#123141");
urlList << QUrl("chrome://newtab/");
urlList << QUrl("favorites://");
urlList << QUrl("");
urlList << QUrl("https://www.google.de/");
urlList << QUrl("https://google.de/");
urlList << QUrl("https://www.youtube.com/watch?v=XTPGpBBqwe");
urlList << QUrl("https://youtube.com/watch?v=189273ijadzqiuwejk");
urlList << QUrl("http://raspberrypi.stackexchange.com/questions/10371/whoisthisyo");
urlList << QUrl("https://stackoverflow.com/questions/33478464/alfresco-custom");
urlList << QUrl("http://localhost:3000");
urlList << QUrl("localhost:3000");
for (int i = 0; i < urlList.count(); i++) {
qDebug() << "[" << i+1 << "] " << urlList[i].host();
}
return 0;
}
Merci pour votre aide!
Ne vous embêtez pas, il suffit d'utiliser 'QString.replace()' 'avec www' comme OldValue et' "" 'comme nouveau un –
Est-ce que cela signifie qu'il n'y a pas de manière élégante d'accomplir mon objectif décrit? ; p –