正则表达式:在上一期之前和之后提取部分网址

时间:2011-02-23 14:53:00

标签: regex url

我有一个网址(http://www.something.com/subdirectory/image.jpg),我想使用正则表达式将网址分成两部分:

1)在最后一段时间之前捕获网址的第一部分(http://www.something.com/subdirectory/image)

2)在最后一段时间(jpg)之后捕获网址的最后一部分

文件扩展名不一定是jpg。

到目前为止,我已经想出了一些东西,但它是在第一个句号而不是最后一个句号之前捕获字符串:

/([^.]*)\.(.*)/
编辑:这是我正在尝试做的事情。通过在图像名称的末尾添加“_On”来替换当前的src。

$(this).attr("src").replace(/(.*)\.([^.]+)$/, "$1_On.$2")

提前感谢您提供任何帮助, 乙

2 个答案:

答案 0 :(得分:2)

您可以匹配不是句点的所有字符,直到它到达行尾:

/(.*)\.([^.]+)$/

答案 1 :(得分:1)

尝试

/(.*)\.(.+)/

我认为它会起作用。