12

我正在寻找一个正则表达式,它将捕获一个没有扩展名的文件名,并在反向引用中给我该名称,以便我可以添加一个扩展名。因此,如果有人输入 xyz,我可以将其替换为 xyz.html。不应捕获 xyz.php 或 xyz.html。

谢谢

4

2 回答 2

21

使用以下正则表达式:

^([^.]+)$

表示仅由非点字符组成的文件名。

更新

为捕获组添加了括号。

于 2013-08-02T13:09:20.290 回答
6

假设扩展名的长度最多为 4 个字符(因此文件名 likemr.smith不被视为具有扩展名,但mr.smith.docmr.smith.html视为具有扩展名):

^.*[^.]{5}$

无需捕获组,因为整个表达式就是您想要的 - 即组 0。

于 2013-08-02T13:14:28.467 回答