簡體   English   中英

javascript拆分字符串選定文本刪除

[英]javascript split string selected text remove

如何使用javascript從字符串中刪除碎片化的文本

示例字符串:

var start = "World,Book,Pencil,Door";

現在,當我選擇任何選定的值時: "World" ,我希望結果是"Book,Pencil,Door"

// result = "Book,Pencil,Door";

如果您詢問如何從逗號分隔的字符串中刪除值,請嘗試以下操作...

var removeValue = function(list, value, separator) {
  separator = separator || ",";
  var values = list.split(separator);
  for(var i=0; i<values.length; i++) {
    if(values[i]===value) {
      values.splice(i, 1);
      return values.join(separator);
    }
  }
  return list;
}

如果找到了您要查找的值,則會將其刪除,並返回一個新的逗號分隔列表。 如果未找到,則返回舊列表。

另一個版本......使用 indexOf

var removeValue = function(list, value, separator) {
  separator = separator || ",";
  var values = list.split(separator);
  var index = values.indexOf(value);
  if(index >= 0) {
    values.splice(index, 1);
    return values.join(separator);
  } else {
    return list;
  }
}

基本上,使用任何一個函數,您都可以將列表 ( "World,Book,Pencil,Door" ) 作為字符串發送,將要刪除的值 ( "World" ) 作為另一個字符串發送,以及分隔符是什么 ( ","表示逗號...但是,逗號也是默認值,因此可以省略)。 如果列表中不存在要刪除的值,它將返回列表。 如果它在列表中,它將被刪除。

示例 1

var final = removeValue("World,Book,Pencil,Door", "World");
// final = "Book,Pencil,Door"

示例 2

var final = removeValue("World,Book,Pencil,Door", "House");
// final = "World,Book,Pencil,Door"

示例 3

var final = removeValue("World|Book|Pencil|Door", "World", "|");
// final = "Book,Pencil,Door"

更新

jsFiddle: http : //jsfiddle.net/rfornal/96awa2ht/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM