使用正则表达式,我如何获得文件的名称?

时间:2016-08-18 14:17:36

标签: regex

我在这里收到了这个文件:

\\prdflsrvcl2.unicreprd.local\Integracao-PRD\GestaoTangiveis\APD\FW_A_enviar_correio_electronico_Imagem_(384).jpg-1-52FFN8.msg

使用正则表达式,我想要这个部分:FW_A_enviar_correio_electronico_Imagem_(384).jpg-1-52FFN8.msg

我使用以下正则表达式:

[[:alnum:]-_]+\.[a-zA-Z]*$

然而,我得到 .jpg-1-52FFN8.msg 而不是我想要的。

但是如果文件名在jpg之前没有点,我会得到 FW_A_enviar_correio_electronico_Imagem_(384)jpg-1-52FFN8.msg

基本上,我希望文件名带有扩展名。

感谢。

2 个答案:

答案 0 :(得分:1)

试试以下正则表达式:

[^\\]+$

它将匹配从结尾到\的第一次出现的所有字符。

示例:https://regex101.com/r/eJ8zG2/1

答案 1 :(得分:0)

您可以使用以下正则表达式并引用第一个捕获组(.*)

/(?!.*\\)(.*)/g

匹配\

后面没有的所有内容

Example