如何在jQuery中对多行文本进行正则表达式验证4x35

4

我需要制作一个多行文本框,让用户输入每行35个字符的4行文本。当我使用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示例中的正则表达式输入掩码是一个好决定,但我对JavaScript正则表达式不是很熟悉,无法创建它(TextBox2-这个正则表达式只是一个示例,我当然需要另一个)。

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]$"
});

有人能帮忙创建这样的正则表达式吗——匹配多行文本,每行35个字符,共4行?感谢您的帮助。

1个回答

2

以下是一个正则表达式,您可以使用它来验证一个字符串有4行,每行不超过35个字符:

^(?:.{0,35}\r?\n){3}.{0,35}$

请查看演示

正则表达式说明:

  • ^ - 字符串开头
  • (?:.{0,35}\r?\n){3} - 三个序列...
    • .{0,35}\r?\n - 匹配 0 到 35 个非换行符的字符,包括一个可选的回车和一个换行符
  • .{0,35}$ - 匹配 0 到 35 个非换行符的字符直到字符串结尾 ($)。

请注意使用了{min,max}限定符以及使用 . 匹配除换行符以外的任何字符。


1
非常感谢,stribizhev!这正是我需要的 :) - Alexandra Ivanova

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接