Javascript 如何获取位于两侧的字符/单词,我们所选的字符位于它们之间? 让我们考虑一个字符串 STR ,定义为: const str = " 'I am going' - 'I' "
以及一个函数calc(),该函数可用作:Javascript 如何获取位于两侧的字符/单词,我们所选的字符位于它们之间? 让我们考虑一个字符串 STR ,定义为: const str = " 'I am going' - 'I' ",javascript,string,Javascript,String,以及一个函数calc(),该函数可用作: console.log( calc(str) ) // => am going 因此,我决定使用正则表达式制作calc()!这就是我的想法 const calc = (str) => { const reg = // Not understanding how to get the strings between which '-' falls str = str.replace(reg, function(_, a) { con
console.log( calc(str) ) // => am going
因此,我决定使用正则表达式制作calc()!这就是我的想法
const calc = (str) => {
const reg = // Not understanding how to get the strings between which '-' falls
str = str.replace(reg, function(_, a) {
const b = remove(a[0], a[1])
return b
})
return str
}
remove()是一个从字符串中删除单词的函数,我制作了。如果有任何错误,您可以自由修改我的代码。这是我想象的一个例子。所以,请帮我完成我的功能 您可以在
-
处拆分字符串,并获得'
中的内容,使用匹配。然后,使用构造函数创建一个动态正则表达式,并替换第一个匹配中第二个匹配的所有实例
函数计算(str){
常量[第一,第二]=str.split(/\s*-\s*/)
.map(s=>s.match(/'([^']+)'/)[1])
首先返回。替换(新的RegExp(第二个“g”),“”)
}
log(计算(“‘我要走’-‘我’”)
log(calc(“'Remove this from this string'-'this'))
您可以在-
处拆分字符串,并在'
中使用匹配获得内容。然后,使用构造函数创建一个动态正则表达式,并替换第一个匹配中第二个匹配的所有实例
函数计算(str){
常量[第一,第二]=str.split(/\s*-\s*/)
.map(s=>s.match(/'([^']+)'/)[1])
首先返回。替换(新的RegExp(第二个“g”),“”)
}
log(计算(“‘我要走’-‘我’”)
console.log(calc(“'Remove this from this string'-'this'))
您希望正则表达式捕获什么?我希望我的正则表达式go给我一个数组,arr=['I'm go','I'],我有一个名为Remove()的函数,我会这样做:Remove(arr[0],arr[1])会给我'am go',所以您想删除I
和连字符-
?是的,我已经更新了这个问题。这不是我的家庭作业,我只是想有一个新的语法。Javascript可以添加带+的字符串,所以我想象了相反的情况,你希望正则表达式捕获什么?我希望我的正则表达式给我一个数组,arr=['I am go','I'],我有一个名为remove()的函数,我会这样做:remove(arr[0],arr[1])会给我'am go',所以你想删除I
和连字符-
?是的,我已经更新了这个问题。这不是我的家庭作业,我只是想有一个新的语法。Javascript可以添加带+的字符串,所以我的想法正好相反