javascript - 从字符串中提取信息

标签 javascript regex node.js match

所以我得到了这个字符串

G-Eazy - The track title (Mr. Awesome Remix) (Official Video)

现在我想提取艺术家、歌曲名称、混音等信息,而忽略有关官方视频的信息。

这意味着我只是假设第一部分是艺术家的名字,后面跟着一个空格和减号,然后又是一个空格。然后我想检索第一个括号的内容并忽略所有包含“官方”等词的括号......

有没有办法使用正则表达式来做到这一点?

最佳答案

表达式 /^(.+?)\s+\-\s+(.+?)\s*\((.+?)\)/ 似乎按预期工作。

Example Here

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/

相关文章:

java - 根据条件结束正则表达式

javascript - node_modules 不被识别为内部或外部命令

javascript - 使用 Axios 的 HTTP get 请求在 URL 的开头使用本地主机 IP 发送

javascript - 未捕获的类型错误 : Illegal invocation error while sending data from ajax

css - 查找 CSS 注释的正则表达式中不必要的星号

c - Posix正则表达式捕获组匹配序列

node.js - Azure Functions - 如何支持 ES6 导入/导出

mysql - NodeJS : Nested SQL query for custom REST API endpoint

JavaScript AJAX : Stop endless scroll when request returns empty

javascript - 如何预加载图像,以便我的 ASP.NET 网页站点中的非插件幻灯片放映计时不会被取消?