输入如下:
Content-Disposition: form-data; name="test.png"; filename="test.jpg"
或
Content-Disposition: form-data; name="foo"
输出:
['test.png', 'test.jpg']
或
['foo']
哪位大佬指导下?[献花][献花][献花]
手机回复的,也没测试,就当瞎写的。
name=(".*\.png");filename=(".*\.jpg")
用$1 与$2 输出
(\")(\S+)(\")取第二组。
https://regex101.com/
这个网站可以直接测试正则,挺好用的。
function(str) {
return [...str.matchAll(/name="([\w+.]+)"/g)].map(item => item[1])
}
/(?:")(\S+)(?:")/.exec('Content-Disposition: form-data; name="test.png"; filename="test.jpg"') 稍微改了下,返回的是 [""test.png"", "test.jpg"],第一个多了双引号。。。
niubility,大佬能一个正则匹配出来吗?
第二种情况满足不了