如何对分裂进行更严格的限制?

时间:2017-05-30 10:48:47

标签: javascript string split

我希望通过仅使用给定的字符串对split进行更严格的限制。我的意思是它应该只替换给定的字符串,而不是_dyna的字符串。

我不知道如何转换我的分裂来解决这个问题。

我的愿望是尊重上限,并且只有当字符串与给定字符串相同时

我认为只有尊重上限才有可能,但也许有人知道如何做我想做的一切

var base = "depends_on: - tomato-app - guacamole_dyna - GUACAMOLE - guacamole - guAcamole"

var newStr = base.split("guacamole").join("newstring");

console.log(newStr)

1 个答案:

答案 0 :(得分:1)

您可以使用使用空格或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);