2016-03-22 19 views
-4

'。'を許可する正規表現パターンを作成する際に助けが必要です。 4桁ごとに長さが11より大きくてはいけません。4桁後の10進数を許可する正規表現パターン

1234.5678 is valid 
12345  is invalid 
1234.5678.9 is valid 
1234.5678.91 is invalid as the length of a string is greater than 11 

おかげ

+5

あるドットダングリング有効

  • あるあなたの試みを投稿してください。 –

  • +3

    * *または*が必要*か? '' 1234 ''は有効ですか? '' 1234年はどう? –

    +0

    http://regex101.comあなたがあなたの正規表現をオンラインでデバッグし、問題のあるリンクを投稿したい場合に備えて。 – RedX

    答えて

    0

    理由だけ|全て(のみ)可能なケースとを組み合わせることではないのですか?

    ^[0-9]{1,4}$      - no dot 
        ^[0-9]{4}\.[0-9]{1,4}$   - one dot 
        ^[0-9]{4}\.[0-9]{4}\.[0-9]{1,2}$ - two dots 
    

    ので、最終的なパターンは、(あなたがサンプルを提供していませんでしたので)

    1. 空の文字列ことを私はを提案してきた答えは

      (^[0-9]{1,4}$)|(^[0-9]{4}\.[0-9]{1,4}$)|(^[0-9]{4}\.[0-9]{4}\.[0-9]{1,2}$) 
      

      になります("")はは無効

    2. 短い番号(例: "123""1234")が(例えば"1234.""1234.5678.")は無効