我是java中正则表达式的新手。如何检查文件名是否具有以下格式update_9_0_27?是这样的[0-9][\\_][0-9][\\_][0-100]吗?
22212 次
2 回答
7
以下应该有效:
^[a-zA-Z]+_\d_\d_\d{1,2}$
^和是字符串锚的$开头,因此您不会只匹配字符串的一部分。每个\d将匹配一个数字,{1,2}最后的\d意思是“匹配一位到两位数(包括)”。
如果update文件名的部分始终不变,则应使用以下内容:
^update_\d_\d_\d{1,2}$
请注意,在 Java 字符串中创建此正则表达式时,您需要转义每个反斜杠,因此字符串看起来像"^update_\\d_\\d_\\d{1,2}$".
于 2013-05-16T23:46:19.973 回答
2
数字位置是否固定,即 1-1-2?
^update\_\d\_\d\_\d\d$
在 Java 字符串中使用,您需要转义反斜杠
"^update\\_\\d\_\\d\\_\\d\\d$"
如果[0-9][\\_][0-9][\\_][0-100]你的意思是个位数、下划线、个位数、下划线、零到一百,并且这个序列可以出现在字符串中的任何位置,那么
".*[0-9][_][0-9][_](100|[1-9][0-9]|[0-9]).*"
请注意,我现在已将其用作指定文字下划线[_]的替代方法。\_最后一部分专门针对 0-100 进行测试。
于 2013-05-16T23:45:41.067 回答