我只想在字符串中的任何位置包含數字和/或'h'或'H'字符時驗證字符串。僅適用於數字的正則表達式僅加'h'字符
例如
123 - 有效
123H - 有效
11 H 23 - 有效
h234 - 有效
123H - 有效
ASDF - 無效
123D - 無效
我我能夠限制字符串的數字而不是與h的額外要求。我怎樣才能做到這一點?
我只想在字符串中的任何位置包含數字和/或'h'或'H'字符時驗證字符串。僅適用於數字的正則表達式僅加'h'字符
例如
123 - 有效
123H - 有效
11 H 23 - 有效
h234 - 有效
123H - 有效
ASDF - 無效
123D - 無效
我我能夠限制字符串的數字而不是與h的額外要求。我怎樣才能做到這一點?
^\d*h?\d*$
與ignore case選項一起使用。
^
錨字符串的開始。
\d*
匹配0或多個數字
h?
匹配0或1小時
\d*
匹配0或多個數字
$
錨固到字符串的末尾。
[0-9h]*
將匹配任何數字0-9或h。要只允許一個,「h」可以使用[0-9]*h?[0-9]*
(我假設你已經在做大小寫不敏感)。您也可以像在[0-9]{1,2}h?[0-9]{1,2}
中那樣限制h周圍的數字位數。
讓我們得到真正的忘乎所以,並假設你想允許0-59被輸入爲分鐘,或在小時和分鐘格式分離「H」:
[0-9]{1,2}h[0-5]?[0-9]|[0-5]?[0-9]
謝謝。它的工作:) – deathrace
這對於'12H'不適用於'H'的某處。 '^ \ d * h?H?\ d * $'將是正確的。 –
@VishalSuthar確定它會工作。你讀過我的解釋還是嘗試了regexr鏈接?你的將匹配1hH123 – stema