文字列を検証するためのjavascript REGEXを作成しようとしています。Java正規表現のJavaScript相当
以下の要件を検証する必要があります。
大文字と小文字の英字(a〜z、A〜Z)(ASCII:65〜90,97〜122)AND/OR数字0〜9(ASCII:48〜57)AND文字 - _〜(ASCII:45,95,126)。ただし、最初の文字でも最後の文字でもありません。キャラクターを持つこともできます。 (ドット、ピリオド、フルストップ)(ASCII:46)ただし、最初または最後の文字ではなく、2回以上連続して出現しないことも条件となります。
私は以下のようにREGEXのJava版を持っています。
^[\ W〜 - ](= [^ \ W _]?)++(\ [\ W *〜 - ]。++)* +(?< = [^ \ W _])$
Javascriptで変換に失敗しました。以下は失敗した試みです。
^[\〜W - ](= [^ \ W _]?)+([\〜W - ]。+)( [W \]。)$
それ
"a." "1." "a1." "aB78." "aB78..ab" "aB78,1" "aB78 abc" ".Abc12"
abc..def 1
テストケースに失敗します有効な文字列のための
テストケース:
"a" "1" "a1" "a.1" "abc-def" "a1b2c~3" "012_345"
JSの正規表現を終了保証ほとんどが、他の正規表現と同じです。何を試しましたか? – llamerr
**何をJSに変換しようとしましたか?あなたの失敗の試みを教えてください! – Bergi
非捕捉グループ '?:' –