javascript - reg Exp javascript
问题描述
我对动态正则表达式有疑问。这是示例
var searchStr = "C:\\Users\\fds\\Desktop\\Node"
num = 2
var p ='([a-zA-Z]*:{1}(\\[a-zA-Z]*){'+num+'})'
var p1 = new RegExp(p,"gi")
console.log(p1)
let wabpath = searchStr.replace(p1,"")
console.log(wabpath)
我正在尝试动态传递 {num} 但它不起作用,有人可以帮我吗?
解决方案
您在正则表达式中使用反斜杠。但它们充当转义字符。如果你想匹配实际的反斜杠,你也需要转义它们。在您的情况下,您需要分隔两个反斜杠,从而连续四个。
var searchStr = "C:\\Users\\fds\\Desktop\\Node"
num = 2
var p ='([a-zA-Z]*:{1}(\\\\[a-zA-Z]*){'+num+'})'
var p1 = new RegExp(p,"gi")
console.log(p1)
let wabpath = searchStr.replace(p1,"")
console.log(wabpath)
推荐阅读
- c - 使用 pthread_create 调用“int argc, char** argv -> int”类型的 C 函数
- javascript - 创建 3 选项动态依赖下拉列表
- python - BeautifulSoup 问题:如何通过匹配准确的标签内容得到准确的链接?
- javascript - WaveSurfer.js - 同时播放和控制多个音轨
- javascript - 如何从 OMDB API 中检索数据,例如海报、演员等?
- raspberry-pi3 - Raspberry Pi 3 B+ OpenMediaVault 传输速度上限为 11MB/秒
- angular - 使用数据循环折叠区域
- algorithm - Cora-3算法开发气泡指数报警器
- vba - 如何在字符串中插入一个字符?(VBA)
- python - 创建一个能够在一定范围内预测用电量的神经网络