我需要用多个分隔符获取拆分数组的最后一个元素。分隔符是逗号和空格。如果没有分隔符,则返回原始字符串。
如果字符串是"how,are you doing, today?"它应该返回"today?"
如果输入是“hello”,输出也应该是“hello”。
如何在JavaScript中做到这一点?
我需要用多个分隔符获取拆分数组的最后一个元素。分隔符是逗号和空格。如果没有分隔符,则返回原始字符串。
如果字符串是"how,are you doing, today?"它应该返回"today?"
如果输入是“hello”,输出也应该是“hello”。
如何在JavaScript中做到这一点?
当前回答
每件事都有一句话。:)
var output = input.split(/[, ]+/).pop();
其他回答
获取最后一个元素有多种方法
让输入=“一,二,三,四”; Let output1 = input.split(',').pop(); console.log (output1 =, output1); Let split = input.split(','); Let output2 = split[split.length-1]; console.log (output2, output2 = '); Let output3 = input.split(',').reverse()[0]; console.log (output3, output3 = '); Let output4 = input.split(',').slice(-1)[0]; console.log (output4, output4 = ');
您还可以考虑反转数组并取第一个元素。这样你就不需要知道数组的长度,但它并没有带来真正的好处,缺点是反向操作可能会花费更长的时间:
array1.split(",").reverse()[0]
虽然这很简单,但也会修改原来的数组。这可能是个问题,也可能不是。
参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reverse
也许你会想用这个:
array1.split(",").pop()
史上最好的,也是我最喜欢的分切法
Const STR = "你好,你今天怎么样?" Const last = str.split(' ').slice(-1)[0] console.log ({})
另一个是使用拆分,然后弹出最后一个。
Const STR = "你好,你今天怎么样?" Const last = str.split(' ').pop() console.log ({})
你可以直接访问数组索引:
Var CSV = ' 0,1,2,3 '; csv.split (" ") [0];/ /结果:零 csv.split (" ") [3];/ /结果:3
var title = 'fdfdsg dsgdfh dgdh dsgdh tyu hjuk yjuk uyk hjg fhjg hjj tytutdfsf sdgsdg dsfsdgvf dfgfdhdn dfgilkj,n, jhk jsu wheiu sjldsf dfdsf hfdkdjf dfhdfkd hsfd ,dsfk dfjdf ,yier djsgyi kds';
var shortText = $.trim(title).substring(1000, 150).split(" ").slice(0, -1).join(" ") + "...More >>";