これらの正規表現を最適化する方法は?

Chaupad

私は多くの単純なケースに一致するパターンを持っています。それぞれに正規表現を使用できますが、パフォーマンスが高くなります。どうすればそれらを最適化できますか?パターンは主に、「m」(メートル)の有無にかかわらず、小数点以下1桁の幅x高さの値からのものです。

パターン(各値の後に「m」を付けることもできません)

23x10
23 x 10
23 x10
23x 10
2.3x10
2.3 x 10
2.3 x10
2.3x 10
2.3x5.1
2.3 x 5.1
2.3x 5.1
2.3 x5.1
1x5
2 x 5
3 x4
4x 5
...etc

私が今までにしたこと:

パターンごとに各正規表現を試しましたが、パターンが多くなり、パフォーマンスが低下する可能性があります

static const QString c_Pattern_WidthHeight_1 = "\\dx\\d\\dm";                   //ex: 5x10m
static const QString c_Pattern_WidthHeight_2 = "\\d[,.]\\d x \\d\\dm";          //ex: 4.1 x 22m
static const QString c_Pattern_WidthHeight_3 = "\\d[,.]\\dx\\d\\dm";            //ex: 4.5x21m
static const QString c_Pattern_WidthHeight_4 = "\\dx \\d\\dm";                  //ex: 5x 14m
static const QString c_Pattern_WidthHeight_5 = "\\dx\\dm";                      //ex: 5x8m
static const QString c_Pattern_WidthHeight_6 = "\\d[,.]\\dm x \\d\\dm";         //ex: 3.8m x 10m
static const QString c_Pattern_WidthHeight_7 = "\\d[,.]\\d\\d x \\d";           //ex: 4.15 x 9
static const QString c_Pattern_WidthHeight_8 = "\\d x \\d\\dm";                 //ex: 3 x 10m
static const QString c_Pattern_WidthHeight_9 = "\\d\\dx\\d[,.]\\dm";            //ex: 10x4.5m
user11116003

この正規表現を使用してみてください:

^\d{1,2}(\.\d{1,2})? ?m? ?x ?\d{1,2}(\.\d{1,2})? ?m?$

これがデモです

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

この正規表現を最適化する方法

分類Dev

正規表現を最適化する方法は?

分類Dev

この正規表現を最適化するにはどうすればよいですか?

分類Dev

この正規表現をさらに最適化できますか?

分類Dev

この正規表現を適用する方法は?

分類Dev

正規表現:perlの正規表現がひどく遅い-最適化する方法は?

分類Dev

正規表現を使用せずにコードを最適化する方法は?

分類Dev

'?'で満たされた正規表現を最適化する

分類Dev

このJavaScript正規表現を単純化する方法は?

分類Dev

次の正規表現を最適化する

分類Dev

これらの正規表現を作成する方法

分類Dev

壊滅的な正規表現のバックトラックのこのケースを最適化する方法はありますか?

分類Dev

この正規表現を最適化してパフォーマンスを向上させるにはどうすればよいですか?

分類Dev

正規表現-この正規表現(OR)を単純化する方法はありますか?

分類Dev

スペースと句読点(アポストロフィを除く)で行を分割するようにこの正規表現を最適化する方法

分類Dev

Java正規表現を最適化する

分類Dev

PowerShellで正規表現のマッチングを最適化する

分類Dev

パス置換のために正規表現を最適化する

分類Dev

正規表現:最後の空の行を削除する方法は?

分類Dev

これらの単語を正規表現で区切る方法

分類Dev

Gnu sed 正規表現拡張、これらの 2 つの文字を入力する方法は?

分類Dev

正規表現を使用する最適な方法

分類Dev

この文法規則を最適化する方法は?

分類Dev

これら2つの正規表現を組み合わせる方法はありますか?

分類Dev

このための正規表現を作成する方法は?

分類Dev

正規表現の最適化

分類Dev

正規表現の最適化

分類Dev

正規表現の最適化

分類Dev

この正規表現を修正する方法は?

Related 関連記事

  1. 1

    この正規表現を最適化する方法

  2. 2

    正規表現を最適化する方法は?

  3. 3

    この正規表現を最適化するにはどうすればよいですか?

  4. 4

    この正規表現をさらに最適化できますか?

  5. 5

    この正規表現を適用する方法は?

  6. 6

    正規表現:perlの正規表現がひどく遅い-最適化する方法は?

  7. 7

    正規表現を使用せずにコードを最適化する方法は?

  8. 8

    '?'で満たされた正規表現を最適化する

  9. 9

    このJavaScript正規表現を単純化する方法は?

  10. 10

    次の正規表現を最適化する

  11. 11

    これらの正規表現を作成する方法

  12. 12

    壊滅的な正規表現のバックトラックのこのケースを最適化する方法はありますか?

  13. 13

    この正規表現を最適化してパフォーマンスを向上させるにはどうすればよいですか?

  14. 14

    正規表現-この正規表現(OR)を単純化する方法はありますか?

  15. 15

    スペースと句読点(アポストロフィを除く)で行を分割するようにこの正規表現を最適化する方法

  16. 16

    Java正規表現を最適化する

  17. 17

    PowerShellで正規表現のマッチングを最適化する

  18. 18

    パス置換のために正規表現を最適化する

  19. 19

    正規表現:最後の空の行を削除する方法は?

  20. 20

    これらの単語を正規表現で区切る方法

  21. 21

    Gnu sed 正規表現拡張、これらの 2 つの文字を入力する方法は?

  22. 22

    正規表現を使用する最適な方法

  23. 23

    この文法規則を最適化する方法は?

  24. 24

    これら2つの正規表現を組み合わせる方法はありますか?

  25. 25

    このための正規表現を作成する方法は?

  26. 26

    正規表現の最適化

  27. 27

    正規表現の最適化

  28. 28

    正規表現の最適化

  29. 29

    この正規表現を修正する方法は?

ホットタグ

アーカイブ