У меня есть несколько URL-адресов, разделенных запятыми, как показано ниже.
https://drive.google.com/open?id=17kTY2b3XvERC4wqZnLt7sVwMe8ZoDZUD, https://drive.google.com/open?id=1En1tNNLEgz5JiIk2GJnjNb_bhk23YJb2, https://drive.google.com/open?id=2En1tNNLEgz5JiIk3GJnjNb_bhk23YJb2
Мне нужно получить только идентификаторы (Пример: 17kTY2b3XvERC4wqZnLt7sVwMe8ZoDZUD) из него в массиве.
Я новичок и был бы признателен, если бы кто-нибудь помог мне с кодом.
Вы можете использовать string.split ("? Id =") и получить второй элемент из возвращенного массива (элемент 0 для всего слева, 1 для справа)
EG:
<script> var myArray = ["https://drive.google.com/open?id=17kTY2b3XvERC4wqZnLt7sVwMe8ZoDZUD", "https://drive.google.com/open?id=1En1tNNLEgz5JiIk2GJnjNb_bhk23YJb2", "https://drive.google.com/open?id=2En1tNNLEgz5JiIk3GJnjNb_bhk23YJb2"]; for(var i=0; i<myArray.length; i++) { var result = myArray[i].split("?id=")[1]; console.log(result); } </script>
Используйте встроенную в браузер библиотеку парсинга URL.Не пытайтесь использовать регулярные выражения, чтобы отделить URL, потому что вам это не нужно (и вы можете ошибиться).
var u = new URL("https://drive.google.com/open?id=2En1tNNLEgz5JiIk3GJnjNb_bhk23YJb2"); console.log(u.searchParams.get('id')); > "2En1tNNLEgz5JiIk3GJnjNb_bhk23YJb2"