【发布时间】:2019-10-10 13:59:32
【问题描述】:
我需要实现一个函数,给定一个文件名作为输入,根据正则表达式的规范返回一个子字符串
文件名是这样组成的,我需要把字符串加粗
Doc20191001119049_fotocontargasx_3962122_943000.jpg
Doc201810011052053_照片AssicurazioneCartaceo_3962128_943000.jpg
Doc201910011214020_fotoesterna_ant_396024_947112.jpg
Doc201710071149010_foto_TargaMid_4007396_95010.jpg
我目前已经实现了这个:
Pattern rexExp = Pattern.compile("_[a-zA-Z0-9]+_");
但不能正常工作
【问题讨论】:
-
试试
Pattern rexExp = Pattern.compile("_\\w+_(?=\\d{7}_)"); -
不知道不同的位数是否是拼写错误,但对于您发布的所有示例,这适用于
^Doc[\d+]{14,15}([^\d]+)[\d]{6,7}_[\d]{5,6}\.jpg$...
标签: java android regex regexp-substr