我需要一个正则表达式,它可以验证输入字符串是否有效的电压或电流。 必填格式为任意数字,后跟“ V”或“ A”有效。
我当时想拆分字符串并进行验证,但它不是可靠的解决方案,难以实施。
答案 0 :(得分:1)
您可以使用以下内容:
^[0-9]+\s?[vaVA]$
另一个更紧凑的表达方式是
^\d+\s?[vaVA]$
或者,您可以仅包含字符[va]
并将标记表示为不区分大小写。
如果您不想接受数字和单位之间带有空格的输入,请不要输入\s?
。所以表达式应该是
^\d+[vaVA]$
如果您想允许使用负数,请在数字前添加破折号,例如:
^-?\d+\s?[vaVA]$
如果您想接受十进制值:
^-?\d+(\.\d+)?\s?[vaVA]$
由于问题被标记为C#,因此请确保转义RegEx定义或对字符串使用@运算符(即@"^\d+[avAV]$"
)
更新
要严格匹配,可以分别使用行首(^
)和行尾锚($
)。我已经更新了示例表达式以包含这些表达式。
答案 1 :(得分:0)
尝试一下 / \ d + v / gi 字符串c =“ 12V” //要验证的数字
如果(c.match(/ \ d + v / gi)!null) { 验证号码 } 其他 { 无效 }
/\d+v|\d+a/i
\d
=>选择所有数字
+
>选择所有数字,直到找到一个非数字值
v
=>选择v
/i
=>使比赛区分大小写
|
=>或运算符