查找并包装包含换行符的字符串

时间:2016-11-19 14:49:04

标签: javascript regex

考虑以下字符串:

You look away whilst I weave needles
through my skin to seal the scars,
running repairs, not alterations.

实际上将其存储在数据库中:

You look away whilst I weave needles\r\n
through my skin to seal the scars,\r\n
running repairs, not alterations.\r\n

如何在span标记中找到并包装最后两行? e.g

You look away whilst I weave needles
<span>through my skin to seal the scars,
running repairs, not alterations.</span>

目前我有:

let regex = new RegExp(stringToMatch,'m'); //I thought 'm', multiline might work?
poem = poem.replace(regex, '<span>' + stringToMatch + '</span>')

适用于不包含任何\r\n的字符串。

1 个答案:

答案 0 :(得分:0)

我建议你使用这样的东西

var poem = 'You look away whilst I weave needles\r\nthrough my skin to seal the scars,\r\nrunning repairs, not alterations.\r\n';
let regex = /((.+[\r\n]+)+)((.+[\r\n]+){2})/
poem = poem.replace(regex, '$1<span>$3</span>');