gpt4 book ai didi

正则表达式从文件名中捕获页码

转载 作者:行者123 更新时间:2023-12-02 02:44:05 24 4
gpt4 key购买 nike

我的文档页面图像的名称(例如)如下:

“2020-07-24 07;17;09 - ABCD - 12345-67890 (14 Main St) - 01 [Declaration 1].png”“2020-07-24 07;17;09 - ABCD - 12345-67890 (14 Main St) - 02 [Declaration 2].png”“2020-07-24 07;17;09 - ABCD - 12345-67890 (14 Main St) - 07 [Fire].png”“2020-07-24 07;17;09 - ABCD - 12345-67890 (14 Main St) - 12 [Fungi etc].png”

我只想捕获页码,前面不带零(本例中为 1、2、7、12)。基于我看到的代码here ,我想也许这样的事情可以解决它:

 - 0*\d+.*\.(?:jpe?g|png|tiff?)$(?!(?:0*)\d+)

...但是,事实并非如此。还有其他建议吗?

最佳答案

您可以使用数字捕获组:

- 0*(\d+) \[[^][]*]\.(?:jpe?g|png|tiff?)\b

说明

  • - 0* 匹配 - 一个空格和 0+ 次零
  • (\d+) 捕获组 1,匹配 1+ 位数字
  • [[^][]*] 匹配空格并从 []
  • \.(?:jpe?g|png|tiff?)\b 匹配一个点和替代项之一

Regex demo

要捕获最后一次出现空格破折号后不带前导零的数字,您可以使用负向前看:

 - 0*(\d+)(?!.* - ).*\.(?:jpe?g|png|tiff?)$

Regex demo

关于正则表达式从文件名中捕获页码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63090481/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com