私はたくさん検索しましたが、この RegExp の解決策を見つけることができません (Reg. Expressions の経験があまりないと言わざるを得ません)。
Regex = ^[1-9]?[0-9]{1}$|^100$
0 を除く 1 から 100 までの数値をテストしたい
試してみてください、これはより効率的に動作します.. 1. 00 - 99.99 (10 進数を含む)
^([0-9]{1,2}){1}(\.[0-9]{1,2})?$
ワーキングフィドルリンク
https://regex101.com/r/d1Kdw5/1/
2. 1 ~ 100 (両端を含む) の範囲の数値で、前に 0 はありません。
(?:\b|-)([1-9]{1,2}[0]?|100)\b
ワーキングフィドルリンク
彼が本当に正規表現を必要としていると仮定すると(多くの状況で完全に合理的です)、問題は特定の正規表現の種類を指定する必要があることです。例えば:
egrep '^(100|[1-9]|[1-9][0-9])$'
grep -E '^(100|[1-9]|[1-9][0-9])$'
(... | ...)代替構文が使用可能な場合は、正常に機能します。他のコンテキストでは、\(... \ | ... \)のようにバックスラッシュされます
そのための正規表現パターンを記述する方法はたくさんあります
^(?:(?!0)\d{1,2}|100)$
^(?:[1-9]\d?|100)$
^(?!0)(?=100$|..$|.$)\d+$
このangular 6に使用します
これを試して。
^([0-9]\.[0-9]{1}|[0-9]\.[0-9]{2}|\.[0-9]{2}|[1-9][0-9]\.[0-9]{1}|[1-9][0-9]\.[0-9]{2}|[0-9][0-9]|[1-9][0-9]\.[0-9]{2})$|^([0-9]|[0-9][0-9]|[0-99])$|^100$
0.00 - 100 を検証します。小数点以下 2 桁です。
これが役立つことを願っています
<input matInput [(ngModel)]="commission" type="number" max="100" min="0" name="rateInput" pattern="^(\.[0-9]{2}|[0-9]\.[0-9]{2}|[0-9][0-9]|[1-9][0-9]\.[0-9]{2})$|^([0-9]|[0-9][0-9]|[0-99])$|^100$" required #rateInput2="ngModel"><span>%</span><br>
数値は 0 から 100 の間である必要があります
小数点付きの 0 ~ 100 の正規表現。
^100(\.[0]{1,2})?|([0-9]|[1-9][0-9])(\.[0-9]{1,2})?$
これは、if
ステートメントを使用するためのより良い解決策のようです:
num = 55
if num <= 100 and num >= 1:
print("OK")
else:
print("NOPE")
これは非常に単純なロジックなので、regx は必要ありません。
代わりに三項演算子を使用してください
var num = 89;
var isValid = (num <= 100 && num > 0 ) ? true : false;
それはあなたのための魔法を行います!!