2016-04-21 27 views
0

文字列がE123456、H123456、またはT123456の形式であるかどうかを検出するために、以下のC#コードを使用しています。ユーザーIDパターンに一致するJavascript RegExp

Regex(@"\b[eht]\d{6}") 

私はJavascriptと同等のものを使用しようとしていますが、問題があります。

これまでのところ私は持っていますが、それが真実に戻ってくるはずのたびにfalseを返しています。

RegExp("\b[eht]\d{6}") 

ご迷惑をおかけいたしますか、またはRegExpの書式設定へのリンクをご覧ください。

答えて

0

あなたの正規表現は、あなたのユーザーIDは大文字E、HとTを持っていながら、小文字と一致するように正規表現文字列(RegExp("\b[EHT]\d{6}"))で大文字を使用するか、またはiフラグを使用するか(RegExp("\b[eht]\d{6}",'i')

012:フラグ溶液用 https://regex101.com/r/yW9zF2/1
  • オンラインテスター:大文字溶液用https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/RegExp
  • オンラインテスター
  • 0

    文字列をエスケープするといくつかの問題があり、正規表現では大文字と小文字を区別しません。私はあなたが持っている問題は、文字列引数、特殊文字でのRegExpコンストラクタを使用しているという事実によるものであると信じてい

    new RegExp("\\b[eht]\\d{6}", "i") 
    
    +0

    ありがとうTamas。これはうまくいった。 –

    1

    /\b[eht]\d{6}/i 
    

    またはRegExpコンストラクタを使用してこの正規表現表現を試してみてくださいスラッシュや引用符などは、バックスラッシュ文字でエスケープする必要があります。また、大文字と小文字の両方の一致を許可する場合は、iフラグを使用します。

    コンストラクタメソッドで正規表現を作成するには、使用します。

    new RegExp("\\b[eht]\\d{6}", "i") 
    

    または正規表現リテラルにする、と行く:

    var regExName = /\b[eht]\d{6}/i 
    

    また、あなたともっと試してみたい場合はRegExのJavaScript、http://regexr.com/は私が強く推奨するすばらしいサイトです!

    +0

    Tamasのソリューションはうまくいきました。しかし、あなたが私にチェックアウトのためのいくつかの追加リソースを提供したので、私はあなたの答えに投票しました。私はとても感謝しています。 TY。 –

    関連する問題