2017-04-21 10 views
2

1つ以上のドット( "。")がない4文字を含むパターンの正規表現を作成しようとしています順 (例:ASD、.afd、.AF正規表現(すべての可能な順序で最大3文字と1つ以上のドット)

は、これまでのところ私は、{4}この[-ZA-Z(+)]を得たが、動作していないよう(これはalexとaleの両方に一致します)。いずれかの文字、または(.+または)リテラル記号:

答えて

2

[a-zA-Z(.+)]{4}パターンは4つの文字に一致します。 - 文字列

  • (?=.*[.])の開始 - 任意の0の後に少なくとも1つのドットがなければならないことを要求肯定先読み

    • ^

      あなたは

      ^(?=.*[.])[a-zA-Z.]{4}$ 
      

      詳細を使用することができます+ chars

    • [a-zA-Z.]{4} - letteの4回の出現rまたはドット
    • $ - 文字列の最後。

    regex demoを参照してください。

  • 1

    あなたの正規表現言語は先読みアサーションをサポートしている場合は、

    (?=.{0,3}\.)[A-Za-z.]{4} 
    

    これは. 0-3の後に文字があると主張し、また4つの文字はすべて-Zまたは.です。

    あなたの正規表現言語は先読みアサーションをサポートしていない場合、あなたは多少痛みを伴う方法でこれを行う必要があるでしょう、それぞれの位置で.用ケース付き

    \.[A-Za-z.]{3}|[A-Za-z]\.[A-Za-z.]{2}|[A-Za-z]{2}\.[A-Za-z.]|[A-Za-z]{3}\. 
    

    関連する問題