Я создаю веб-приложение, которое показывает авторов/докладчиков видео.
Проблема в том, что соглашение об именовании видео является " видео-темой - автором видео ".
Я хочу, чтобы автор видео с видео-имени.
Я пытался использовать JavaScript REGEX, но, похоже, он не работает последовательно.
Например: "Добрый Сын", "Дух предательства" | Pst.Evans Kariuki
Я хочу извлечь Pst.Evans Kariuki
Кто-то поможет мне сделать это, спасибо.
Для этого вам не нужно регулярное выражение. Просто пойдите для split
:
const video = "The Good Son , The Spirit of Betrayal | Pst.Evans Kariuki";
const author = video.split("|").pop().trim();
console.log(author);
Или получите оба элемента (название и автор) за один раз:
const video = "The Good Son , The Spirit of Betrayal | Pst.Evans Kariuki";
const [title, author] = video.split("|").map(s => s.trim());
console.log(title);
console.log(author);
Вы можете использовать \|\s*(.*)
Чтобы выполнить это. Это регулярное выражение будет соответствовать |
буквально, съешьте все пробелы, а затем выберите свой текст с помощью (.*)
const regex = /\|\s*(.*)/;
const str = 'The Good Son , The Spirit of Betrayal | Pst.Evans Kariuki';
let m = regex.exec(str);
console.log(m[1]);
Этот сайт поражает: https://regex101.com/
const regex = /.*\|(.*)/;
const str = 'The Good Son , The Spirit of Betrayal | Pst.Evans Kariuki';
const ret = regex.exec(str);
console.log(ret);
console.log(ret[1].trim());
title.split("|").pop()
? И какова была ваша попытка?