javascript - 将\n\r 转换为字符串在 jquery 中没有任何作用

标签 javascript jquery html

我想从我的文本区域中取出一段文本,放入一个变量中,并将所有换行符 (\n\r) 更改为“@@”。
由于某种原因,它不起作用。

请帮忙,这是一个 fiddle :http://jsfiddle.net/HK82q/

$("#go").click(function(){
 curtext = $("textarea").val();
 curtext = curtext.replace("\n\r\n","@@");
 alert(curtext);
});

最佳答案

“换行符”可以表示以下三种情况之一:

  • \r(回车),旧Mac电脑使用
  • \n(换行符),用于 Linux、Unix,我认为是新的 Mac
  • \r\n (CRLF), Windows 使用

因此,您需要处理所有这三种情况。这可以通过多个 .replace 调用或正则表达式来完成:

curtext = curtext.replace(/(?=[\r\n])\r?\n?/g,"@@");

此正则表达式的工作原理是首先断言前面有 CR 或 LF,然后可选地匹配它们以允许所有三个选项。该断言确保“无”不匹配。

关于javascript - 将\n\r 转换为字符串在 jquery 中没有任何作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19788388/

相关文章:

javascript - 使用 Javascript 和 Angularjs 循环

javascript - jQuery 不适用于动态生成的 div

javascript - 禁用元素内的某些标签和 javascript?

Jquery:语法错误,无法识别的表达式:nth-​​child()

javascript - 使用 browserify,未捕获的 ReferenceError : function is not defined

javascript - 引用数据类型 javascript

javascript - jssor slider 滑动时如何附加元素?

javascript - Cordova 应用程序中的已读/未读计数器和列表

html - Openshift 找不到我的 css 文件

javascript - 使用javaScript跟踪背景图像加载进度