我有这种模式,非常适合在每行末尾添加逗号。
str.replace(/(.+)\s*?($|\n)/gm, "$1, $2")
但我不明白如何更改它,以便它不会在最后一行放置逗号。特别是考虑到最后一行可能以换行符结束。我想我可以在替换完成后搜索逗号并删除最后一个逗号,但这似乎有点弱。有什么方法可以更改此模式,使其永远不会在最后一行添加逗号?
最佳答案
只需从那里删除 $
,并将其添加为 \n
之后的否定前瞻:
str.replace(/(.+)\s*?(\n(?!$))/gm, "$1, $2")
如果 \n
不在字符串末尾,则只会在它之前添加一个逗号。
关于javascript - 表达式将逗号附加到每行的末尾。但不应该做最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19167234/