【发布时间】:2021-03-25 09:14:35
【问题描述】:
我有如下input 数组。
const input = [
'_rels', 'item1.xml',
'item2.xml', 'item3.xml',
'item4.xml', 'item5.xml',
'item6.xml', 'item7.xml',
'itemProps1.xml', 'itemProps2.xml',
'itemProps3.xml', 'itemProps4.xml',
'itemProps5.xml', 'itemProps6.xml',
'itemProps7.xml'
]
数组可以包含任何字符串。
我想过滤item{number}.xml的数组,不包括itemProps{number}.xml。
预期的结果是:
const output = [
'item1.xml', 'item2.xml', 'item3.xml', 'item4.xml', 'item5.xml', 'item6.xml', 'item7.xml'
]
【问题讨论】:
-
为什么是正则表达式?只需搜索
itemProps。 -
数组中可能有许多其他非
item前缀元素。 -
然后保留所有以
item开头但不以itemProps开头的元素。仍然不需要正则表达式。 -
如果我过滤以
item开头的元素,那么itemProps1.xml也将包含在结果中,但我只想item1.xml, item2.xml, ...。 -
你错过了 "... 但不是
itemProps" 我的评论部分
标签: javascript arrays regex