我可以使用正则表达式条件而不将它们作为结果的一部分吗



我有一些类似的文件路径字符串:

\server01foldersome subfolderTHISpage1.pdf

在检查字符串的末尾是否为.pdf时,如何使用正则表达式获取THIS字符串?

我尝试用\S*.pdf$来获得THISpage1.pdf,现在我可以用它除以来获得值,但我想知道是否有一个正则表达式可以直接给我THIS

对于clearance:我不知道THIS会是什么字符串,它只是一个占位符。

您可以使用捕获组

\\.*\([^s\]+)\w+.pdf$

解释

  • \\匹配\
  • .*\匹配到最后一个
  • ([^s\]+)捕获组1,匹配除之外的1+个非空白字符
  • \w+匹配和1+字字符
  • .pdf匹配.pdf
  • $字符串末尾

Regex演示

如果文件名也可以包含点和其他字符:

\\.*\([^s\]+)\[^\rn]+.pdf$

Regex演示

如果您不想捕获组:

[^\]+(?=\[^\]+.pdf$)

查看演示

相关内容

  • 没有找到相关文章

最新更新