正则表达式在js文件中报错

const rg = /(?<=/).[^/]*?(?=\|)/;
const str = 'ru.yandex.clickhouse.ClickHouseDriver||jdbc:clickhouse://10.101.129.94:8123/bees_test||test';
const res = str.match(rg);

想匹配到str字符串变量中的bees_test,在正则表达式在线测试是可以的,但是在实际项目中,提示有报错;
报错信息如下:
image.png

阅读 2.7k
3 个回答

加上转义字符const rg = /(?<=\/).[^\/]*?(?=\|)/;

第一个斜杠把正则开头的斜杠闭合了,后面就有了语法问题
试试把内容里的斜杠前面加上反斜杠

转义字符丢啦
const rg = /(?<=\/).[^\/]*?(?=\|)/
或者用 RegExp 对象试一下

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题