要在javascript中替换的正则表达式

要在javascript中替换的正则表达式,javascript,regex,string,replace,str-replace,Javascript,Regex,String,Replace,Str Replace,输入 输出 '/api/v1' or '/_api/v1' 我可以这样做 '/' 但我只是好奇,我们如何利用replace方法中的正则表达式,并在一次操作中完成它?只需使用?元字符来创建下划线 //在这里使用构造函数避免所有正斜杠转义 const rx=new RegExp('/?api/v1') 常量输入=['/api/v1','/_api/v1'] inputs.forEach(输入=>{ console.info(输入“变成”,输入.replace(接收“/”)) })您可以使用一个

输入

输出

'/api/v1' or '/_api/v1'
我可以这样做

'/'

但我只是好奇,我们如何利用replace方法中的正则表达式,并在一次操作中完成它?

只需使用
元字符来创建下划线

//在这里使用构造函数避免所有正斜杠转义
const rx=new RegExp('/?api/v1')
常量输入=['/api/v1','/_api/v1']
inputs.forEach(输入=>{
console.info(输入“变成”,输入.replace(接收“/”))

})
您可以使用一个简单的或条件
|

正则表达式:/api/v1 |/_api/v1

使用javascript:

const output = input.replace('/api/v1', '/').replace('/_api/v1', '/');

尝试此模式
\/\uuAPI\/v\d+

  • \uu?
    是有或没有
    \uu
  • d+
    一起使用,它将匹配
    v1和v2
  • var input1='/api/v1'
    变量input2='/_api/v1'
    console.log(input1.replace(/\/\\ api\/v\d+/g,'/'))
    console.log(input2.replace(/\/\\ api\/v\d+//g,'/'))
    const output = input.replace(/\/api\/v1|\/_api\/v1/g, '/');