javascript - 用于捕获多次出现的正则表达式 javascript

标签 javascript regex

我有一段文字,例如:

Hello ../aaa.jpg ../bbb.jpg ../sss.gif ../xxx.png End of Text

我想获取所有扩展名为 jpg 和 png 的文本。

预期结果:

 1. ../aaa 
 2. ../bbb 
 3. ../xxx

我尝试使用 .match(/(.*).(jpg|png)/),但它似乎没有按预期工作

最佳答案

你必须使用 g 标志来处理多次出现,你只需要匹配单词 (\w),点 (\.) 和斜杠 (\/) 在点和扩展名之前:

let re = /([\w\.\/]*)\.(?:jpg|png)/g

console.log(
    'Hello ../aaa.jpg ../bbb.jpg ../sss.gif ../xxx.png End of Text'.match(re)
)

关于javascript - 用于捕获多次出现的正则表达式 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52004428/

相关文章:

javascript - 如何在 bool 值变化时运行函数?

javascript - js 中的正则表达式行

regex - Invision电源板中修改的YouTube链接所需的媒体标签正则表达式代码

python - 查找 2 个字符之间的所有整数和子字符串

Python re.sub 将部分字符串更改为 ascii

javascript - 对计算的 Vue 属性使用条件

javascript - 使用 CSS 或 JavaScript 在外部单击时如何关闭 CSS 菜单

javascript - 如何调试 ReactJs/Redux 中浏览器网络操作的意外时间间隙?

javascript - ASP.NET RegisterClientScriptBlock、RegisterStartupScript 问题

java - 使用正则表达式查找 2 个括号之间的数字