问题描述
- 怎么判断一个字符串中含有几个文件名
-
比如"速查笔记.doc,说明.txt,这是测试啊啊啊啊啊啊啊.txt,dd,s.33.txt".文件名中可以包含
逗号,句号等字符,所以不能用逗号和句号分割.那么难道是判断后缀名吗,但是后缀名何其多.
啊.请问有人有方法吗
解决方案
此题无解!因为txt.txt,txt.txt你说是几个文件?也可能是一个,也可能是两个,这个连伟大的人类都无法区分开,因为你统计的时候,用逗号做分隔符,就导致了,将来无法把他们再次分开,就算比尔盖茨来也不可能有解决方案,害的我想了好久。。。
解决方案二:
如何判断一个字符串中含有中文?
解决方案三:
正则匹配: [w.-]+.[a-zA-Z]+
解决方案四:
(?:^|,)([w.,-]+?.[a-zA-Z]+)
解决方案五:
先按“,”分割填充到集合,循环集合判断有索引“.”就统计 —_—
解决方案六:
用正则还是没法判断文件数。比如“123.doc,234.txt”,看上去是有两个文件,但如果“123.doc,234”这一整串都是文件名呢?那其实只有一个文件。所以要传多个文件名,用String是不合适的,用String[]数组。
解决方案七:
使用split分割,以逗号进行分割,然后去数组的长度就行
解决方案八:
如果新开发还是用数组,如果解决历史遗留问题那split吧。再去检查异常的文件名,进行微调。
解决方案九:
你需要考虑txt.txt.txt.txr这种特殊情况,要具体规则,是所有情况考虑要还是最后一个点的位置为一个文件名
时间: 2024-10-26 20:31:14