【发布时间】:2017-05-13 01:13:00
【问题描述】:
我正在开发一个节点模块,该模块将文件上传到 s3 并在上传文件后执行云端失效,但考虑到失效不是免费的,我想将上传的失效文件路径减少到可能的最小正则表达式值,例如
[
'library-latest-v2.min.js',
'library-latest-v2.min.js.map',
'library-latest-v2.test.min.js',
'library-latest-v2.test.min.js.map'
]
会变成library-latest-v2*
任何想法如何去编写一个函数来做到这一点?没有太多运气谷歌搜索。如果它可以处理多种变化,例如
[
'library-latest-v2.min.js',
'library-latest-v2.min.js.map',
'other-library-v3.min.js',
'other-library-v3.min.js.map'
]
会减少到['library-latest-v2*', 'other-library-v3*'],但不确定这有多大可能
【问题讨论】:
-
匹配第一个
.的所有内容,然后过滤数组以获取匹配的字符串。如果找到结果,请将其删除并将*添加到原始文件中。如果我理解你的问题,那就是。 -
我宁愿选择
.map(用于将元素中的.*替换为*),然后是.uniq。 -
确保你也匹配
.,否则你可能会遇到v2和v23等的冲突
标签: javascript arrays node.js string