• -2
  • 新人请关照

关于正则匹配,假如字符串以npm:开头,中间是任意内容,回车字符前结尾

我的问题是这样的:假如我有一个段字符串 如下

"

中秋节快乐,npm: run dev                       
  该命令:是启动项目
中秋节快乐,npm: run build
  该命令:是构建项目 

"

需求是 只要遇到 以npm: 开头,直到下一回车(n)前
将匹配的这部分内容前后添加一个div标签包裹
<div>npm: run dev</div>

最终生成的字符串

"

中秋节快乐,<div>npm: run dev</div>                       
  该命令:是启动项目
中秋节快乐,<div>npm: run build</div>
  该命令:是构建项目 

"

现在的写法是,但是无法做到替换。。。
const reg = /(np)(ws*)+b/g
str.replace(reg, <div>reg</div>)

感谢回答。。。。。。

阅读 505
评论
    3 个回答
    var str = `中秋节快乐,npm: run dev
    该命令:是启动项目
    中秋节快乐,npm: run build
    该命令:是构建项目 `;
    const res = str.replace(/(npm:[\w\W]*?)\n/g, "<div>$1</div>\n");
    console.log(res);
      • 252

      请问,将你需要匹配的内容替换成 reg,并且在前后加上 div,的正则怎么写?

      <div>reg</div>

      请问 reg 和 div 的区别是什么?

      一个是变量,一个不是变量?

      根据不同实现方式,引用子表达式的方式也不同

      \number or $number

        撰写回答

        登录后参与交流、获取后续更新提醒