カンマで区切られた1から1000までの数字の文字列に一致する正規表現が必要です。
例:12,56,100,190,900,1000
検証のために、フロントエンドでjavascriptを使用し、バックエンドでphpを使用しています。理想的には、両方で機能する共通の正規表現が必要です。
カンマで区切られた1から1000までの数字の文字列に一致する正規表現が必要です。
例:12,56,100,190,900,1000
検証のために、フロントエンドでjavascriptを使用し、バックエンドでphpを使用しています。理想的には、両方で機能する共通の正規表現が必要です。
カンマで区切られた1〜1000の範囲の数値は、次のように一致します。
(?<=,|^)([1-9][0-9]{0,2}|1000)(?=,|$)
行全体を一致させたい場合は、次のようにする必要があります。
^([1-9][0-9]{0,2}|1000)(,([1-9][0-9]{0,2}|1000))*$
要件によっては、最初、最後、および/またはコンマの後に空白を入れることもできます。
これにより、最初に空白が許可されます。
^\s*([1-9][0-9]{0,2}|1000)(,([1-9][0-9]{0,2}|1000))*$
これにより、最後に空白が許可されます。
^([1-9][0-9]{0,2}|1000)(,([1-9][0-9]{0,2}|1000))*\s*$
これにより、コンマの後に空白を入れることができます。
^([1-9][0-9]{0,2}|1000)(,\s*([1-9][0-9]{0,2}|1000))*$
これらを好みに合わせて組み合わせてください。
編集2:ビニングまたは最後にコンマを許可する場合、正規表現は次のようになります。
^,?([1-9][0-9]{0,2}|1000)(,\s*([1-9][0-9]{0,2}|1000))*,?$
ここで,?
は、0または1つのコンマを使用できることを意味します。
編集:説明、要求に応じて:
^
最初と$
最後には入力マークの開始/終了があります-入力全体をテストすることを保証します[1-9]
1から9までの数字に一致します。同様に[0-9]
0から9までの数字に一致します。{0,2}
前の部分(この場合[0-9]
)が0〜2回存在することを示します|
論理的ですOR
-一致する前の部分または一致した後の部分のいずれかしたがって、最初の括弧のセットでは、数字1から9に一致し、その後に0、1、または2桁の0から9が続きます。これにより、1から999までの数字が得られます。または、1000に一致します。
*
次に、コンマに続いて上記と同じブロックを照合します。このロットは、括弧の後の文字で示されているように、0回以上照合されます。