我是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 回答