如何使用正则表达式用该字符串的填充版本替换数字字符串?

时间:2014-08-15 14:29:59

标签: regex string padding

我有一个程序搜索目录,将文件加载到DB中,使用DB中的ID字段匹配文件名,使用正则表达式搜索模式。

数据库包含ID(##AAA######,ex 14ABC000123),而文件名通常包含##AAA###(ex 14ABC123),我需要与这两个匹配的正则表达式,返回完整来自文件名的ID。到目前为止我设计了

([0-9]{2})([A-Z]{3})([0-9]{1,6})

但是当向匹配器返回$ 1 $ 2 $ 3时,它会失误说14ABC123 != 14ABC000123。请帮忙。

1 个答案:

答案 0 :(得分:0)

似乎你需要摆脱零。试试这个:

([0-9]{2})([A-Z]{3})0*?([1-9]{1,6})