正则表达式:如何匹配字符串中的最后一个点

2022-08-30 18:23:12

我有两个示例文件名字符串:

jquery.ui.min.js
jquery.ui.min.css

我可以使用什么正则表达式来仅匹配最后一个点?我不需要别的,只需要最后一个点。

再多说一点我在做什么。我正在使用PHP的preg_split()函数将文件名拆分为数组。该函数删除所有匹配项,并为您提供一个包含拆分之间元素的数组。我试图让它将jquery.ui.min.js拆分成一个看起来像这样的数组:

array[0] = jquery.ui.min
array[1] = js

答案 1

如果要提取字符串的最后一部分,则需要:

\.([^.]*)$

如果您不想要或.

(\.[^.]*)$

如果你这样做。


答案 2

我认为你会很难使用,应该是更好的选择。preg_splitpreg_match

preg_match('/(.*)\.([^.]*)$/', $filename, $matches);

或者,查看 pathinfo
或者,只需两行即可完成:

$filename = substr($file, 0, strrpos($file, '.'));
$extension = substr($file, strrpos($file, '.') + 1);

推荐