为了提取字符串的最后一部分,我正在努力使用JS中的代码。
输入字符串的示例包括:
Event.DEAudience-90c92fe9-7fc8-f7ad-9b10-7eb778f6a857.id
或
Event.DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888.NNNNNNNN
,我需要第一部分直到第二部分。这样的
Event.DEAudience-90c92fe9-7fc8-f7ad-9b10-7eb778f6a857
或
Event.DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888
你可以使用split, slice &
var arr = ["Event.DEAudience-90c92fe9-7fc8-f7ad-9b10-7eb778f6a857.id", "Event.DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888.NNNNNNNN"];
for (var i = 0; i < arr.length; i++) {
console.log(arr[i].split(".").slice(0, -1).join("."))
}
split(".")
返回一个数组
["Event", "DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888", "NNNNNNNN"]
只需要该数组中倒数第二个元素之前的元素。为此,我们可以使用切片方法slice(0, -1)
,这里我们传递要选择的元素范围。0
表示开始索引,-1
(负索引)结束索引表示最后一个元素。切片方法返回数组中从开始索引到结束索引(不包括)的元素。我们会得到
["Event", "DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888"]
现在我们需要将它连同点一起转换回字符串。为此,我们可以使用join(".")
方法。它将用"."
连接数组中的元素,并返回字符串
Event.DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888
split
将字符串放到.
上的数组中,然后slice
去掉元素直到最后一个元素,然后join
将该数组放回字符串中。
const str = 'Event.DEAudience-90c92fe9-7fc8-f7ad-9b10-7eb778f6a857.id';
const str2 = 'Event.DEAudience-90c92fe9-9b10-7fc8-9b10-7eb778f68888.NNNNNNNN';
function getText(str) {
const arr = str.split('.');
return arr.slice(0, arr.length - 1).join('');
}
console.log(getText(str));
console.log(getText(str2));