2016-12-22 13 views
0

正規表現3文字以上の英字を組み合わせることはできません(つまり「Joe4u」はOKですが「JoeL4u」はありません) 私はいくつかのアプローチを試みていますが、私はLookaheadとLookbehindを試しましたが、何もありませんでした。 これは私がやったいくつかの試行の一つです。正規表現3文字以上の英字を一緒に使用することはできません

^(?=[A-Za-z]*[A-Za-z]{0,2}[^A-Za-z]*)(?=.{8,})

+1

を再生することができますか? – RomanPerekhrest

+0

ありがとうございました... "ukey"に3つ以上の文字があるので間違っているはずです –

+0

お試し[this](http://regexr.com/3euea) –

答えて

1

このLIF_HKNの答え、助け

^([A-Za-z]{0,3}[^A-Za-z]+)*[A-Za-z]{0,3}$ 

のための彼のおかげであなたは、この ` "Joe4ukeyは"`考慮されるべきか、ここでそれを Debuggex Demo

1

ただ、文字列は4つの連続した文字が含まれている場合

  • !...が逆転し、これがステップ

    • /[a-zA-Z]{4}/.test(str)チェックすることにより、ステップの仕組み
      if (!/[a-zA-Z]{4}/.test(str)) { 
          ... 
      } 
      

      テストを逆に!を使用結果
  • +0

    こんにちは、助けてくれてありがとう、私はちょうどそのことを試してみた –

    +0

    こんにちは、助けてくれてありがとう、私はちょうどdebuggexでそれをテストしようとしましたが、動作していないようですhttps://www.debuggex.com/r/sWG1ZytwcUTY1k_8 –

    +0

    @juniordevこれは、純粋な正規表現ではない、Javascriptのコードを試してください、それはJavascriptで動作します。 – akuhn

    関連する問題