gpt4 book ai didi

javascript - 如何检测文本区域输入中的换行符?

转载 作者:IT王子 更新时间:2023-10-29 03:06:52 27 4
gpt4 key购买 nike

检查文本区域值的换行符然后计算出现次数(如果有)的最佳方法是什么?

我网页上的表单上有一个文本区域。我正在使用 JavaScript 获取文本区域的值,然后检查它的长度。

例子

enteredText = textareaVariableName.val();
characterCount = enteredText.length; // One line break entered returns 1

如果用户在文本区域输入换行符,我上面的计算给出换行符的长度为 1。但是我需要给换行符的长度为 2。因此我需要检查换行符和换行符的数量出现次数,然后将其添加到总长度中。

我想要实现的目标的例子

enteredText = textareaVariableName.val();
characterCount = enteredText.length + numberOfLineBreaks;

在问这个问题之前,我的解决方案如下:

enteredText = textareaVariableName.val();
enteredTextEncoded = escape(enteredText);
linebreaks = enteredTextEncoded.match(/%0A/g);
(linebreaks != null) ? numberOfLineBreaks = linebreaks.length : numberOfLineBreaks = 0;

我可以看到对文本进行编码并检查 %0A 有点冗长,所以我在寻求一些更好的解决方案。感谢您的所有建议。

最佳答案

您可以在包含换行符的字符串上使用match,并且该数组中的元素数量应与换行符的数量相对应。

enteredText = textareaVariableName.val();
numberOfLineBreaks = (enteredText.match(/\n/g)||[]).length;
characterCount = enteredText.length + numberOfLineBreaks;

/\n/g 是一个正则表达式,意思是“查找字符 \n(换行符),并全局执行(在整个字符串中)。

||[] 部分是为了防止没有换行符。 Match 将返回 null,因此我们改为测试空数组的长度以避免错误。

关于javascript - 如何检测文本区域输入中的换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10950538/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com