2

以下のパターンを使用して、変数に格納されているテキストから Google URL を照合しようとしています。

URL は二重引用符を使用します

QRegExp regExp;
regExp.setPattern("http://www.google.com/(.*)");

私はなんとか URL を一致させましたが、それ以降に含まれるすべてのテキストに不意に一致してしまいました。以下のような同様のバリアントを使用してみましたが、機能しないようです。

regExp.setPattern("http://www.google.com/(.*)\"is"); 
regExp.setPattern("http://www.google.com/^(.*)$\"");

URLだけに一致する正規表現を取得するのに役立ちます。

前もって感謝します

4

2 に答える 2

1

QRegExp を使用する必要がある/使用したい理由はありますか?

ほとんどの場合、QUrl を使用できます。

于 2012-09-05T18:14:53.823 に答える
0

テキスト内の URL の周りに何があるか (引用符? 括弧? 空白?) を知ることは不可能ですが、URL の一部ではない文字の否定的な一致を試みることで、より適切な正規表現を作成できます。 :

QRegExp regExp;
regExp.setPattern("http://www.google.com/([^()\"' ]*)");

次に、この負の文字クラスに可能な文字をさらに追加する必要があります。

于 2012-09-05T18:15:47.377 に答える