我想限制HTML5格式的文本输入字段。我只需要它的值从1到5
我的代码是
A = [0, 1];
B = [0, 1, 3, 1, 4, 5, 6];
% Split B into cells
C{1} = B(1:3) ; % this can be coded if more splits are required
C{2} = B(4:end) ;
% removing the lements
for i = 1:2
C{i}(C{i}==A(i))=[] ; % remove the elements in C{i} present in A(i)
end
cell2mat(C)
进行匹配(期望):
<input type="text" name="count" pattern="[1-5][0-9-.]{1,10}" value="1" required>
不匹配(期望):
1
1.5
1.584
2
4.68756
5
现在发生了(问题):
答案 0 :(得分:1)
您可以使用
pattern="[1-4](?:\.\d+)?|5(?:\.0+)?"
HTML5引擎将其解析为^(?:[1-4](?:\.\d+)?|5(?:\.0+)?)$
。参见regex demo。
详细信息
^(?:
-字符串的开头和非捕获组的开头[1-4]
-从1
到4
的数字(?:\.\d+)?
-.
和1+个数字的可选序列(小数部分可以包含任意数量的任何数字)|
-或5
-匹配5
(?:\.0+)?
-.
和1+个零的可选序列(如果整个部分为5
,则小数部分可以包含任意数量的零))$
-外部“容器”组的结尾和字符串的结尾。要允许前导零,请使用
pattern="0*(?:[1-4](?:\.\d+)?|5(?:\.0+)?)"
^^^^^ ^