自動補完によってバニーが追加された文字列「cats、dogs、bun、bunnies」があるとしましょう。もちろん、「bun」をうさぎに置き換えてほしいです。
では、最後のカンマの前のテキストを削除し、それ以外はすべて保持するにはどうすればよいでしょうか? したがって、文字列は「cats,dogs,bunnys」になります。
編集
基本的に、最後から 2 番目の項目が最後の項目の最初の部分に含まれている場合は、削除する必要があります。
ありがとう!ファルコ
自動補完によってバニーが追加された文字列「cats、dogs、bun、bunnies」があるとしましょう。もちろん、「bun」をうさぎに置き換えてほしいです。
では、最後のカンマの前のテキストを削除し、それ以外はすべて保持するにはどうすればよいでしょうか? したがって、文字列は「cats,dogs,bunnys」になります。
編集
基本的に、最後から 2 番目の項目が最後の項目の最初の部分に含まれている場合は、削除する必要があります。
ありがとう!ファルコ
つまり:
var str = "cats,dogs,bun,bunnies";
var arr = str.split(",");
arr.splice((arr.length - 2) ,1);
arr.join(",");
console.log(arr);
ここにそれを行う方法があります。正規表現も使えます。
sList = "cats,dogs,bun,bunnies".split(",");
num = sList.length;
if (sList[num-1].search(sList[num-2]) != -1) {
sList.splice(-2, 1);
}
required = sList.join(',');
これがうまくいくかどうかはわかりませんが、2つの方法があります。
// Array splice
text = text.split(',')
text.splice(-2, 1)
text = text.join(',')
// regular expression
text.replace(/\w+,([^,]+)$/, '$1')
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/splice
var s="cats,dogs,bunnies"
var str = s.split(',').reverse();
str.splice(1,1);
s=str.join(',')