首页 > 解决方案 > Java中的自定义正则表达式

问题描述

我必须实现一个检查字符串是否符合正则表达式的函数,我编写了一个解析文件名列表的方法,对于每个文件名我需要检查是否尊重正则表达式。

文件名的组成如下(只是一个例子):

该字符串始终由以下内容组成:

扩展名(仅 jpg 或 pdf)“ .一组三个数字.一组三个数字

使用这个正则表达式,我需要检查输入端中的字符串是否如上所述,我目前已经实现了这个:

Pattern rexExp = Pattern.compile("((\\.jpg)|(\\.pdf))\\.[0-9]{3}\\.[0-9]{3}");

但不能正常工作,实现一个正则表达式来检查文件名是否以某个路径结尾是个好主意吗?

标签: androidregex

解决方案


比其他答案不那么贪婪,认为它适合你:

\\w+\\.(jpg|pdf)(\\.\\d{3}){2}
  • 文件名,仅由字母、数字和_组成
  • jpg 或 pdf 格式
  • 另一个点
  • 三位数
  • 点和三个数字重复

推荐阅读