問題タブ [qregularexpression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
499 参照

c++ - QRegularExpression を使用して文から 10 進数を抽出する

現在、次の10進数を抽出しようとしています:

2453.6756667756

次の文から:

ID: 1 x: 1202 y: 2453.6756667756 w: 242

私はこのコードを使用しています:

ただし、次の結果が得られます。

6756667756

これはまったく正しくありません。

私を手伝ってくれますか ?

0 投票する
2 に答える
1142 参照

c++ - Qt / QRegularExpression - すべての結果をキャプチャできません。最初のインスタンスのみです。なぜですか?

<td>タグで囲まれたテキストを取得しようとしています。私の問題は、最初の結果しか取得できず、他の結果を取得できないことです。

次の HTML から、次のテキストである最初の結果のみを取得します。

学生の名前

しかし、残りの必要なテキストをキャプチャしようとする他のすべての試みは、空、null です。それはなぜですか、私は何を間違っていますか?

作業する正規表現のテキスト:


私のコード:

0 投票する
1 に答える
1638 参照

c++ - Qt の正規表現

Qt5.6を使用しています。

受信データをシリアル ポートで処理する必要があります。データは「AD=+172345AD=+272345」などの形式になります。着信データを a に追加し、QString正規表現を使用して小数を抽出します。

正規表現を書くと:

一致しません。つまり、tmp は常に -1 です。しかし、ここで正規表現をテストしたところ、有効であることがわかりました。問題は何ですか?

0 投票する
1 に答える
322 参照

c++ - Qt5 の QRegularExpressions でのアクセント付き文字の処理

を使用してユーザーのフルネームの入力を受け付けていますが、QLineEdit受け付けたいです

すべての国際文字

フランス語の「é」、ノルウェー語の「æ」、「ø」、「å」などを使用すると同時にQRegularExpressionValidator、名前が実際に有効な名前であることを確認するために使用します(文字以外の文字は使用できません)。

問題は、そのようなアクセント付きの文字をすべて網羅的にリストする必要があるのか​​、それとも、Qt が更新されたリストを提供することを信頼できる、使用できるある種の「ワード クラス」があるのか​​ということです。

最善のアプローチは何ですか?

0 投票する
2 に答える
56 参照

regex - この正規表現を取得する方法

私はこのコードを持っています:

...そして、私はこの部分を取得したい:

どうすればいいのですか?私はこれを試しました:

...しかし、最初の[^<]ものはこれしか認識しないため機能しません:

0 投票する
1 に答える
301 参照

c++ - QRegularExpression は後方参照を削除しますか (結果として検索が高速になります)

のドキュメントをざっと見てみると、後方参照をQRegexpサポートしていることが示されていますが、QRegularExpressionそれについては言及されていません。後方参照なしの正規表現マッチングは線形時間でスケーリングできるため、これは注目に値しますが、後方参照は指数時間としてスケーリングされます (ソース [デッドリンク]キャッシュされたバージョン)。

同様の StackOverflow の回答では、主な違いは実行速度にあることにも言及しています。新しい正規表現クラスが線形時間で検索できる新しいアルゴリズムを採用できると考えるのは論理的ですが、私はこれについて直接の知識はありません。QRegularExpression新しいクラスで上記のような違いはありますか?

0 投票する
1 に答える
285 参照

c++ - qtを使用して複雑な部分文字列を取得する方法は?

私はQTとc ++に取り組んでいます。テスト プロジェクトの一環として、複雑で長い文字列から部分文字列を取得する必要があります。基本的には、Web ページのソースです。私の質問が非常に些細に見える場合、それは私が素朴な qt プログラマーであり、正規表現の経験が少ないためです。

文字列: "url_encoded_fmt_stream_map":"type=video%2Fwebm%3B+codecs%3D%22vp8.0%2C+vorbis%22\u0026quality=medium\u0026itag=43\u0026url=https%3A%2F%2Fr2---sn-ci5gup-qxaz.googlevideo.com%2Fvideoplayback%3Fmime%3Dvideo%252Fwebm%26key%3Dyt6%26initcwndbps%3D386250%26pcm2cms%3Dyes%26requiressl%3Dyes%26signature%3D05FB41F2F9FF5490841C7B9F40748FC4B8F505A3.0D81AB0745519F179CBF4468D2412C2240DC72F0%26ratebypass%3Dyes%26fexp%3D3300119%252C3300131%252C3313268%252C9405961%252C9416126%252C9416891%252C9419451%252C9422342%252C9422596%252C9427790%252C9428398%252C9431012%252C9433096%252C9433380%252C9433855%252C9433946%252C9434332%252C9435526%252C9435667%252C9435876%252C9436270% 252C9436607%252C9436834%252C9436872%252C9436973%252C9437066%252C9437553%252C9437742%252C9438326%252C9439652%252C9439979%252C9440048%252C9440552%252C9440651%26ms%3Dau%26mt%3D1467900993%26sparams%3Ddur%252Cid%252Cinitcwndbps%252Cip%252Cipbits%252Citag%252Clmt% 252Cmime%252Cmm%252Cmn%252Cms%252Cmv%252Cpcm2cms%252Cpl%252Cratebypass%252Crequiressl%252Csource%252Cupn%252Cexpire%26mv%3Dm%26ip%3D182.68.203.45%26id%3Do-AMB0Fggb71vKhXSdQqcOPdLeb9v0n2GaibsWg_W5L5b7%26mm%3D31%26mn%3Dsn-ci5gup-qxaz%26upn%3Dfri9F8GP9uA%26source%3Dyoutube%26itag%3D43%26pl%3D20%26lmt%3D1445550849945309%26expire%3D1467922869%26sver%3D3%26ipbits% 3D0%26dur%3D0.000,type=video%2Fmp4%3B+コーデック%3D%22avc1.42001E%2C+mp4a.40.2%22\u0026quality=medium\u0026itag=18\u0026url=https%3A%2F%2Fr2---sn-ci5gup-qxaz.googlevideo.com%2Fvideoplayback%3Fmime%3Dvideo%252Fmp4%26key%3Dyt6%26initcwndbps%3D386250%26pcm2cms%3Dyes%26requiressl%3Dyes%26signature%3D4C90C634F68098572BDCA7D5B7946F8A49A17369.D4AB7172922F499596226BA335BDF0B4519A4AC6%26ratebypass%3Dyes%26fexp%3D3300119%252C3300131%252C3313268%252C9405961%252C9416126%252C9416891%252C9419451%252C9422342%252C9422596%252C9427790%252C9428398%252C9431012%252C9433096%252C9433380%252C9433855%252C9433946%252C9434332%252C9435526%252C9435667%252C9435876%252C9436270% 252C9436607%252C9436834%252C9436872%252C9436973%252C9437066%252C9437553%252C9437742%252C9438326%252C9439652%252C9439979%252C9440048%252C9440552%252C9440651%26ms%3Dau%26mt%3D1467900993%26sparams%3Ddur%252Cid%252Cinitcwndbps%252Cip%252Cipbits%252Citag%252Clmt% 252Cmime%252Cmm%252Cmn%252Cms%252Cmv%252Cpcm2cms%252Cpl%252Cratebypass%252Crequiressl%252Csource%252Cupn%252Cexpire%26mv%3Dm%26ip%3D182.68.203.45%26id%3Do-AMB0Fggb71vKhXSdQqcOPdLeb9v0n2GaibsWg_W5L5b7%26mm%3D31%26mn%3Dsn-ci5gup-qxaz%26upn%3Dfri9F8GP9uA%26source%3Dyoutube%26itag%3D18%26pl%3D20%26lmt%3D1465194153116908%26expire%3D1467922869%26sver%3D3%26ipbits% 3D0%26dur%3D207.354,type=video%2F3gpp%3B+コーデック%3D%22mp4v.20.3%2C+mp4a.40.2%22\u0026quality=小さい\u0026itag=36\u0026url=

上記の文字列は、私の完全な文字列と同様のパターンの大部分です。この Web ページ ソースには、分離する必要がある多くのエンコードされた URL があります。以下は、私が分離しようとしているものです。

サブストリング:

https%3A%2F%2Fr2---sn-ci5gup-qxaz.googlevideo.com%2Fvideoplayback%3Fmime%3Dvideo%252Fwebm%26key%3Dyt6%26initcwndbps%3D386250%26pcm2cms%3Dyes%26requiressl%3Dyes%26signature%3D05FB41F2F9FF5490841C7B9F40748FC4B8F505A3.0D81AB0745519F179CBF4468D2412C2240DC72F0%26ratebypass%3Dyes%26fexp%3D3300119%252C3300131%252C3313268%252C9405961%252C9416126%252C9416891%252C9419451%252C9422342%252C9422596%252C9427790%252C9428398%252C9431012%252C9433096%252C9433380%252C9433855%252C9433946%252C9434332%252C9435526%252C9435667%252C9435876%252C9436270% 252C9436607%252C9436834%252C9436872%252C9436973%252C9437066%252C9437553%252C9437742%252C9438326%252C9439652%252C9439979%252C9440048%252C9440552%252C9440651%26ms%3Dau%26mt%3D1467900993%26sparams%3Ddur%252Cid%252Cinitcwndbps%252Cip%252Cipbits%252Citag%252Clmt% 252Cmime%252Cmm%252Cmn%252Cms%252Cmv%252Cpcm2cms%252Cpl%252Cratebypass%252Crequiressl%252Csource%252Cupn%252Cexpire%26mv%3Dm%26ip%3D182.68.203.45%26id%3Do-AMB0Fggb71vKhXSdQqcOPdLeb9v0n2GaibsWg_W5L5b7%26mm%3D31%26mn%3Dsn-ci5gup-qxaz%26upn%3Dfri9F8GP9uA%26source%3Dyoutube%26itag%3D43%26pl%3D20%26lmt%3D1445550849945309%26expire%3D1467922869%26sver%3D3%26ipbits% 3D0%26dur%3D0.000,type=video%2Fmp4%3B+コーデック%3D%22avc1.42001E%2C+mp4a.40.2%22

QT、C++、正規表現を使用してそれを行う方法を教えてください。他のプログラミング言語は使いたくない。ありがとうございます。それでは、お元気で。

0 投票する
1 に答える
1794 参照

qt - QT の QlineEDIT の IP アドレスの QRegExp

QlineEdit コントロールに IP アドレスを入力するときに QlineEdit コントロールを検証する方法、そのコントロールは IP アドレスのみを許可する必要があります。アルファベット、ドット (.) 以外の文字は使用できません。すべての部分は 0 ~ 255 の範囲内である必要があります

IP アドレスには 4 つの部分が含まれ、3 つのドット (.) が必要です: 最初の部分には 3 桁が含まれている必要があります。(必須) 2 番目の部分には最小 1 桁と最大 3 桁が含まれている必要があります。3 番目の部分には最小 1 桁と最大 3 桁が含まれている必要があります。4 つの部分には最低 1 桁が含まれている必要があります。

例: 122.234.245.211 121.112.112.44 255.255.136.132 133.231.123.2 255.0.0.0 121.0.0.23

以下の ADDRESS は受け入れないでください: errorMessage ボックスを表示する必要があります

例: 24.253.321.422 442.445.552.444 23535.35.353.33 3532.333.332

0 投票する
2 に答える
8327 参照

qt - Qt QLineEdit 入力検証

QLineEdit入力バリデーターを有効な IP アドレスに制限するように設定するにはどうすればよいでしょうか? iexxxx ここで、x は 0 から 255 の間である必要があり、x を空にすることはできません