首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >正则表达式用于验证文件名

正则表达式用于验证文件名
EN

Stack Overflow用户
提问于 2012-04-26 05:41:03
回答 2查看 25.9K关注 0票数 8

我需要在这样的方法中验证a。

代码语言:javascript
运行
复制
    validateFileName(Editable s) {
        String filtered_str = s.toString();
        if (filtered_str.matches(".*[regexp].*")) {
            filtered_str = filtered_str.replaceAll("[regxp]", "");
            s.clear();
            s.append(filtered_str);}

我应该使用哪些正则表达式来排除所有非法字符和空格?我使用的是linux

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-26 05:44:26

如果您的想法只是排除非法字符和空格字符,您可以使用类似于:

'^[^*&%\s]+$'

其中您可以将任何“非法”字符添加到字符列表中(在本例中,它忽略*、&、%和空格) \s是空格![]中的^是正则表达式语法的一部分,它的意思是: do not匹配[]中的任何字符。

票数 6
EN

Stack Overflow用户

发布于 2014-01-23 02:11:44

如果您使用的是POSIX兼容的操作系统,则文件名中的合法字符为a-z、A-Z、0-9、句点、下划线和连字符。因此,匹配“非法”字符的正则表达式将是

[^-_.A-Za-z0-9]

附录:这是如果你想要一个完全可移植的文件名。正如我在下面Josip的评论中更正的那样,POSIX本身实际上允许更多的字符。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10324228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档