javascript - 正则表达式 - 查找不在 ","之后的所有换行符

标签 javascript regex

这个正则表达式让我发疯......你能帮助我吗?

我需要一个正则表达式来查找所有换行符(如果逗号后面没有换行符)

我尝试过这个:

((?!\,)\n)

但他匹配所有换行符。

我想要做什么:转换 JSON(带换行符的字符串)

[
 {
  "username": "tim",
  "comment": "you doing a great job!"
 },
 {
  "username": "tim",
  "comment": "when you have new workshoppers?"
 }
]

至:

[ { "username": "tim",
  "comment": "you doing a great job!" },
 { "username": "tim",
  "comment": "when you have new workshoppers?" } ]

所以我尝试将“,”之后的所有换行符替换为“”。

最佳答案

您混淆了前瞻和后瞻。

  • (?!...)是一个否定的前瞻
  • (?<!...)是消极的回顾

所以你真正需要的是消极的回顾。

JavaScript 不支持lookbehinds。解决方法可以是替换 ([^,])[\r\n]+通过$1 .

参见this demo .

关于javascript - 正则表达式 - 查找不在 ","之后的所有换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25442457/

相关文章:

php - DOM文档/DOMXPath

javascript - 在 $.get 之后更改属性

javascript - 如何从 Mapbox GL JS 中的样式层获取特征?

javascript - Vue.js 在计算中获取 v-for 数组值

java - 正则表达式模式未断言 true

Java 正则表达式与量词的问题

javascript - 如何循环播放单选问题后退按钮 Javascript

javascript - 如何在页面更改时保持子菜单打开

javascript - 将字符串中的数字转换为包含逗号的数字

javascript - 为什么我的 JS 正则表达式匹配得比它应该的多?