我正在尝试减少用户可以输入的新行数。如果用户输入3个或更多新行,它将替换为2 <br>
的 -
txt = txt.replace(new RegExp('(\\n){3,}', 'gim') , '<br/><br/>');
问题是,如果某些br之间有空格或制表符等,则此正则表达式将不匹配,因此用户可以放置\ n \ n space \ n \ n,它看起来就好像是4行。
如何更改此正则表达式,可能是向前/向后看以防止这种情况?
由于
答案 0 :(得分:3)
我认为这应该有效:
txt = txt.replace(/(\n[\t ]*){2,}\n/gm , '<br/><br/>')
它将替换任意数量为\n
且至少3 \t
的任意数组{{1}}以及其间的空格。