我想扩展我的正则表达式以匹配文件路径,即使我看到问题,我也不知道该怎么做。
输入示例
" C://species/dinosaurs/trex.json"
输出示例
[" C://物种/恐龙" " TREX" " JSON"]
这样我就有了文件夹路径,文件名和扩展名。 我还希望文件夹路径是可选的
我的正则表达
我试过
"^(.*[\\\/])?(.*)\.(.*)$"
输出
["C://species/dinosaurs/" "trex" "json"]
差不多但我在头部的末尾有
我试过了
"^((.*)[\\\/])?(.*)\.(.*)$"
我输出
[" C://物种/恐龙/" " C://物种/恐龙" " TREX" " JSON"]
也许更好,因为我juste必须删除第一个匹配,而在第一种情况下我必须对字符串进行后处理。
我看到了这个问题,因为身体中存在几个/可能会更难。 是否可以说第一个匹配组的结尾可以是全部而不是/.
我试过
^(.*(?!\/))[\\\/]?(.*)\.(.*)$
不起作用。我刚发现负面断言,但输出是
["C://species/dinosaurs/trex" "json"]
有任何线索吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
一个稍长的正则表达式,它将匹配dos& Linux风格的路径。
'float' object has no attribute 'arctan'
'float' object has no attribute 'sqrt'
这将返回3个捕获组: “C://物种/恐龙” “TREX” “JSON”
我在www.regexr.com上测试了它 所以它至少适用于javascript。