我想对我的split
进行更严格的限制,只接受给定的字符串。我的意思是它应该只替换给定的字符串,而不是用_dyna
替换的字符串。
我不知道如何转换拆分以解决该问题。
我的愿望是尊重大写字母,并且前提是字符串与给定的字符串相同
我认为只能尊重上限,但也许有人在这里知道我该怎么做
var base = "depends_on: - tomato-app - guacamole_dyna - GUACAMOLE - guacamole - guAcamole"
var newStr = base.split("guacamole").join("newstring");
console.log(newStr)
最佳答案
您可以使用正则表达式,该正则表达式使用空格或字符串的stast或结尾。然后仅替换第二个匹配项。
var base = "depends_on: - tomato-app - guacamole_dyna - GUACAMOLE - guacamole - guAcamole",
search = 'guacamole',
replace = 'newstring',
regex = new RegExp('(^|\\s)' + search + '(?=\\s|$)', 'g'),
newStr = base.replace(regex, '$1' + replace);
console.log(newStr);
关于javascript - 如何更严格地限制 split ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44260155/