正则表达式javascript删除另一个字符串后面/前面/分隔的字符串
大家好,正则表达式专家 问题一 我想找到子字符串“delimiter”并删除它以及它后面的任何内容 结果就是“弗雷德·罗伯特”正则表达式javascript删除另一个字符串后面/前面/分隔的字符串,javascript,regex,Javascript,Regex,大家好,正则表达式专家 问题一 我想找到子字符串“delimiter”并删除它以及它后面的任何内容 结果就是“弗雷德·罗伯特” var originalstring = 'fredrobertdelimitergarysusan'; var result = orig.match(/* not sure what goes here*/); console.log('result = ',result); //fredrobert 问题二 我想找到子字符串“deli
var originalstring = 'fredrobertdelimitergarysusan';
var result = orig.match(/* not sure what goes here*/);
console.log('result = ',result); //fredrobert
问题二
我想找到子字符串“delimiter”并删除它以及它前面的任何内容
所以结果是“garysusan”
var originalstring = 'fredrobertdelimitergarysusan';
var result = orig.match(/* not sure what goes here*/);
console.log('result = ',result); //garysusan
问题三
我想找到子字符串“delimiterA”和“delimiterB”,删除它们以及它们之间的内容,结果是“fredsausan”
var originalstring = 'freddelimiterArobertgarydelimiterBsusan';
var result = orig.match(/* not sure what goes here*/);
console.log('result = ',result); //fredsusan
将单词“delimiter”及其后面的所有内容与字符串结尾匹配:
/delimiter.*$/
“分隔符”及其前面的所有内容:
/^.*delimiter/
“delimiterA”、“delimiterB”以及以下各项之间的所有内容:
/delimiterA.*delimiterB/
这里的关键是使用
.replace()
,而不是.match()
.match()
查找与模式匹配但不替换模式的文本.replace()
,好吧,它取代了它
问题一
使用.replace(),而不是.match():
问题二
再次使用.replace():
问题三
在分隔符之间使用.replace()替换为*
:
var originalstring = 'freddelimiterArobertgarydelimiterBsusan';
var result = orig.replace(/delimiterA.*delimiterB/, '');
console.log('result = ',result); //fredsusan
您可以将字符串索引功能用于其中的两个,并搜索子字符串
分隔符
,然后在该位置之前或之后获取子字符串(加上分隔符
长度)。对于第三个,考虑<代码> /^(**)分隔符。*分隔符(**)$/< /代码>。这是本文的中间部分
var originalstring = 'fredrobertdelimitergarysusan';
var result = orig.replace(/.*delimiter/, '');
console.log('result = ',result); //garysusan
var originalstring = 'freddelimiterArobertgarydelimiterBsusan';
var result = orig.replace(/delimiterA.*delimiterB/, '');
console.log('result = ',result); //fredsusan