你好正则表达专家!
问题一 我想找到子字符串'delimiter'并删除它以及它之后的任何内容 所以结果就是'fredrobert'
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'删除它们以及结果是什么,结果是'fredsusan'
var originalstring = 'freddelimiterArobertgarydelimiterBsusan';
var result = orig.match(/* not sure what goes here*/);
console.log('result = ',result); //fredsusan
答案 0 :(得分:1)
此处的关键是使用.replace()
,而不是.match()
。 .match()
找到与模式匹配的文本,但不替换它。 .replace()
,好吧,它取代了它!
问题一
使用.replace(),而不是.match():
var originalstring = 'fredrobertdelimitergarysusan';
var result = orig.replace(/delimiter.*/, '');
console.log('result = ',result); //fredrobert
问题二
再次使用.replace():
var originalstring = 'fredrobertdelimitergarysusan';
var result = orig.replace(/.*delimiter/, '');
console.log('result = ',result); //garysusan
问题三
在分隔符之间使用带有.*
的.replace():
var originalstring = 'freddelimiterArobertgarydelimiterBsusan';
var result = orig.replace(/delimiterA.*delimiterB/, '');
console.log('result = ',result); //fredsusan
答案 1 :(得分:0)
将单词“delimiter”及其后面的所有内容匹配到字符串的末尾:
/delimiter.*$/
“分隔符”及其前面的所有内容:
/^.*delimiter/
“delimiterA”,“delimiterB”以及之间的所有内容:
/delimiterA.*delimiterB/