【问题标题】:Library to clean up and simplify filenames?清理和简化文件名的库?
【发布时间】:2011-07-31 06:55:17
【问题描述】:

我想将包含空格和符号的文件名转换为仅包含字符 A-Z、a-z、句点、连字符和下划线。像这样的正则表达式:([a-z][A-Z]-_\.)+

当然,我可以使用正则表达式来做到这一点。但是由于我已经在我的项目中包含了许多库(Spring、Hibernate、Apache Commons 等等),我想知道这样的东西是否已经可用。

这样的字符串:

This>is some(string,with $invalid*-chars).jpg

将转换为:

This_is_some_string_with__invalid_-chars_.jpg

【问题讨论】:

    标签: java string hibernate spring apache-commons


    【解决方案1】:

    没有任何图书馆能够为您提供比 String.replaceAll("[^a-zA-Z0-9-_\\.]", "_") 更简单的东西

    【讨论】:

    • 是的。我只是认为这将是一个足够普遍的要求,即某些标准帮助程序库将具有 StringUtil.cleanFilename(name) 类型的方法。没什么大不了。顺便说一句,要使用的正确正则表达式是:"somestring".replaceAll("[^a-zA-Z0-9-_\\.]", "_")
    • 如果答案可以用评论中的正则表达式更新会更好。
    • 值得注意的是,这不适用于用户可能拥有包含非字母数字字符(中文、任何带重音符号的语言等)文件的任何系统
    猜你喜欢
    • 1970-01-01
    • 2021-08-23
    • 2010-09-23
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 2011-05-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多