Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript正则表达式限制每行的字符数_Javascript_Regex_Character_Line_Limit - Fatal编程技术网

Javascript正则表达式限制每行的字符数

Javascript正则表达式限制每行的字符数,javascript,regex,character,line,limit,Javascript,Regex,Character,Line,Limit,我试图创建一个JS正则表达式来限制html文本区域中每行的字符数。理想情况下,我更愿意将其作为Javascript正则表达式,因为它更容易用于我们的表单验证引擎 我想创建一个正则表达式来验证字符串每行10个字符,最多3行 这样做的目的是验证如下字符串: 01234567890 a b 这里的第一行有11个字符,所以应该拒绝整个字符串/ a b c d 此文本有4行,因此也应被拒绝 我已尝试使用以下正则表达式,但未按预期工作: ^((?:\n)?[^\n]{0,10}){0,3}$ 关于我做错

我试图创建一个JS正则表达式来限制html文本区域中每行的字符数。理想情况下,我更愿意将其作为Javascript正则表达式,因为它更容易用于我们的表单验证引擎

我想创建一个正则表达式来验证字符串每行10个字符,最多3行

这样做的目的是验证如下字符串:

01234567890
a
b
这里的第一行有11个字符,所以应该拒绝整个字符串/

a
b
c
d
此文本有4行,因此也应被拒绝

我已尝试使用以下正则表达式,但未按预期工作:

^((?:\n)?[^\n]{0,10}){0,3}$

关于我做错了什么有什么线索吗?

你可以用

^.{0,10}(?:\r?\n.{0,10}){0,2}$

详细信息

  • ^
    -字符串的开头
  • {0,10}
    -除换行符以外的0到10个字符
  • (?:\r?\n.{0,10}){0,2}
    -零,一次或两次
    • \r?\n
      -CRLF或LF行结束
    • {0,10}
      -除换行符以外的0到10个字符
  • $
    -字符串结束
JavaScript:

const valid_rx=/^.{0,10}(?:\r?\n.{0,10}){0,2}$/;
常量testFunc=()=>{
如果(!valid_rx.test(document.all.mytextarea.value))
{
log(“请使用正确的格式”);
返回false;
}
}
a
B
C

单击我
很高兴我的答案对你有用。另外,如果我的回答对您有帮助(请参阅),因为您在达到15个代表点后有权享有向上投票的特权。注意:你可以投票选出所有有帮助的答案。