Javascript 在某些情况下,将一个字符串替换为另一个字符串
如果y包含x的最后一个字,我想用y替换x的最后一个字。我该怎么办Javascript 在某些情况下,将一个字符串替换为另一个字符串,javascript,Javascript,如果y包含x的最后一个字,我想用y替换x的最后一个字。我该怎么办 let x ='jaguar lion tiger panda' let y = 'pandas' 预期结果: 'jaguar lion tiger pandas' 'jaguar lion tiger panda cat' 如果 预期结果: 'jaguar lion tiger pandas' 'jaguar lion tiger panda cat' 我尝试过的代码: console.log(response) le
let x ='jaguar lion tiger panda'
let y = 'pandas'
预期结果:
'jaguar lion tiger pandas'
'jaguar lion tiger panda cat'
如果
预期结果:
'jaguar lion tiger pandas'
'jaguar lion tiger panda cat'
我尝试过的代码:
console.log(response)
let before = this.text.split(' ')
console.log(before)
console.log(before.length)
let a = before.slice(before.length-1)
console.log(a)
if (response.data.text[0].includes(a)) {
let x = (before.slice(0, before.length-1))
let y = x.replace(',', ' ')
this.preResult = y.push(response.data.text[0])
} else {
this.preResult.push(this.text + ' ' + response.data.text[0])
您可以使用正则表达式匹配最后一个单词,然后通过检查
y
是否包含该单词来执行测试。如果是,请将单词替换为y
,否则替换为与y
连接的原始单词:
const x='捷豹狮子虎熊猫'
常数doReplace=y=>x.replace(
/\S+$/,//匹配非空格字符,后跟字符串结尾
(字)=>(
y、 包括(word)
Y
:word+“”+y
)
);
console.log(doReplace('pandas'));
console.log(doReplace('cat'))代码>另一种解决方案:
让x='捷豹狮子虎熊猫'
让y=‘熊猫’
设拆分=x.拆分(“”)
让lastWord=splited[splited.length-1]
如果(y.indexOf(lastWord)>=0){
拆分[拆分.长度-1]=y
}否则{
拆分。推送(y)
}
让结果=拆分。联接(“”)
console.log(result)
正则表达式是用于字符串匹配和操作的非常强大和简洁的工具。它们对于程序员来说非常有用。这里使用的一个非常简单,但是-\S+
匹配非空白字符,$
匹配字符串的结尾。我需要用panda替换panda,因为它包含在pandas中。您也可以这样做吗?答案中的代码之所以这样做是因为。includes
测试-按“运行代码片段”好的,谢谢最后一件事,我是土木工程师,学习建筑,但我喜欢编码,至少我这么认为,但它太难了,所以我转向设计网页,这很简单也很有趣,但我真的很想很好地理解背景中发生的事,但我不想在毫无价值的事情上花费太多时间,你能做什么所以我研究了一下,决定做还是不做。。队长这是一个非常广阔的领域——它是基于观点的,所以这取决于你。我正在努力理解这一点。这似乎管用,谢谢。