android - Java中的自定义正则表达式
问题描述
我必须实现一个检查字符串是否符合正则表达式的函数,我编写了一个解析文件名列表的方法,对于每个文件名我需要检查是否尊重正则表达式。
文件名的组成如下(只是一个例子):
口头.pdf.001.001
图片.jpg.002.001
该字符串始终由以下内容组成:
扩展名(仅 jpg 或 pdf)“ . ”一组三个数字“ . ”一组三个数字
使用这个正则表达式,我需要检查输入端中的字符串是否如上所述,我目前已经实现了这个:
Pattern rexExp = Pattern.compile("((\\.jpg)|(\\.pdf))\\.[0-9]{3}\\.[0-9]{3}");
但不能正常工作,实现一个正则表达式来检查文件名是否以某个路径结尾是个好主意吗?
解决方案
比其他答案不那么贪婪,认为它适合你:
\\w+\\.(jpg|pdf)(\\.\\d{3}){2}
- 文件名,仅由字母、数字和_组成
- 点
- jpg 或 pdf 格式
- 另一个点
- 三位数
- 点和三个数字重复
推荐阅读
- java - 多个 Spring 控制器是否应该指向同一个视图文件?
- python - 用另一个文件中的另一个字符串替换一个文件中的字符串
- python - 将特定单词与列表中的字符串匹配。完全匹配而不是部分匹配
- python - 如何用逗号分割lsof捕获的数据?
- r - 如何从长度基于数字输入的 for 循环在 Shiny 中创建 UI?
- yii2 - Yii2 Linkpager 可以这样分页
- c# - 启用架构验证时 C# 反序列化失败
- regex - 带有特殊字符的 jMeter 正则表达式
- mapbox - 单击标记会单击其下方的图层(Mapbox-gl)
- java - Java:合并两个 JSON 对象而不进行迭代