所以我得到了这个字符串
G-Eazy - The track title (Mr. Awesome Remix) (Official Video)
现在我想提取艺术家、歌曲名称、混音等信息,而忽略有关官方视频的信息。
这意味着我只是假设第一部分是艺术家的名字,后面跟着一个空格和减号,然后又是一个空格。然后我想检索第一个括号的内容并忽略所有包含“官方”等词的括号......
有没有办法使用正则表达式来做到这一点?
最佳答案
表达式 /^(.+?)\s+\-\s+(.+?)\s*\((.+?)\)/
似乎按预期工作。
var string = 'G-Eazy - The track title (Mr. Awesome Remix) (Official Video)';
var matches = string.match(/^(.+?)\s+\-\s+(.+?)\s*\((.+?)\)/);
document.querySelector('pre').textContent =
'Artist: ' + matches[1]
+ ' \nTitle: ' + matches[2]
+ '\nRemix: ' + matches[3];
<pre></pre>
输出:
Artist: G-Eazy
Title: The track title
Remix: Mr. Awesome Remix
关于javascript - 从字符串中提取信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34094270/