我需要为用户制作多行文本框,以便用户输入 4 行 x 每行 35 个符号的文本。当我使用 TextBox1 中的方法时,它可以工作,但仅适用于 A-Za-z,以及我必须在此处配置的所有其他符号:
$.mask = {
//Predefined character definitions
definitions: {
'9': "[0-9]",
'a': "[A-Za-z]",
'*': "[A-Za-zА-Яа-я0-9`~!@#$%^&*()_+-=\"]",
'#': "[A-Z0-9]"
}
};
这很不舒服,因为我仍然不知道这个文本框中需要什么语言的符号。
我认为 TextBox2 示例中的 regexp inputmask 是一个很好的决定,但我不擅长创建它的 JavaScript Regexp(TextBox2 - 这个 Regexp 只是例如,我当然需要另一个)。
jQuery(function($){
$("#TextBox1").mask("***********************************
\r\n***********************************
\r\n***********************************
\r\n***********************************");
$('#TextBox2').inputmask('Regex', {
regex: "^[0-9]{2}:[0-5][0-9]:[0-5][0-9]$"
});
有人可以帮助创建这样的正则表达式 - 多行文本 4 行 35 个符号吗?
感谢帮助。
最佳答案
这是一个正则表达式,可用于验证具有 4 行且每行不超过 35 个符号的字符串:
^(?:.{0,35}\r?\n){3}.{0,35}$
见 demo
正则表达式分割:
^
- 字符串 (?:.{0,35}\r?\n){3}
- 3 个序列....{0,35}\r?\n
- 除换行符外的 0 到 35 个字符,直到可选的回车和换行 .{0,35}$
- 除了换行符以外的 0 到 35 个字符,直到字符串 ( $
) 的末尾。 请注意 limiting quantifier
{min,max}
的使用,以及 .
的使用来匹配除换行符以外的任何字符。关于jquery - 如何在 jQuery 中对多行文本 4x35 进行正则表达式验证,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32451352/