@zanyat01

Как получить короткое имя пользователя ВК с помощью регулярного выражения?

Как извлечь короткое имя пользователя ВК с помощью регулярного выражения в таком формате
[id656077892|@my_name.name] и https://vk.com/my_name.name?

Чтобы это работало в обоих случаях.
  • Вопрос задан
  • 179 просмотров
Решения вопроса 1
Вот такой вариант:
/^\[id\d+\|@([^\]]+)\]|https\:\/\/(m\.)?vk\.com\/(.+)$/

короткое имя окажется во 2-м или 4-м элементе.

В консоли браузера проверка на JS:
const str1 = '[id656077892|@my_name.name]';
const str2 = 'https://vk.com/my_name.name';

const regexp = /^\[id\d+\|@([^\]]+)\]|https\:\/\/(m\.)?vk\.com\/(.+)$/;
str1.match(regexp)
//  [ "[id656077892|@my_name.name]", "my_name.name", undefined, undefined ]

str2.match(regexp)
// [ "https://vk.com/my_name.name", undefined, undefined, "my_name.name" ]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы