golang 正则获取图片地址

发布时间:2024-11-22 00:50:18

使用golang正则获取图片地址

介绍

在开发过程中,我们经常需要提取网页中的图片地址。可以使用golang的正则表达式来实现这一功能。

使用正则表达式

下面是一个使用正则表达式获取图片地址的示例代码:

package main

import (
	"fmt"
	"regexp"
)

func main() {
	str := `
		Image 1
		Image 2
		Image 3
		...
	`

	regex := regexp.MustCompile(`src="(.*?)"`)
	matches := regex.FindAllStringSubmatch(str, -1)

	for _, match := range matches {
		imageURL := match[1]
		fmt.Println(imageURL)
	}
}

上述代码中,我们首先定义了一个包含图片地址的字符串。然后,使用regexp包的FindAllStringSubmatch方法和正则表达式`src="(.*?)"`获取图片地址。

正则表达式`src="(.*?)"`的含义如下:

通过这个正则表达式,我们可以获取到字符串中所有的图片地址。

示例

假设我们有以下网页内容:

<html>
	<body>
		<img src="https://example.com/image1.jpg" alt="Image 1">
		<img src="https://example.com/image2.jpg" alt="Image 2">
		<img src="https://example.com/image3.jpg" alt="Image 3">
	</body>
</html>

我们可以使用上述代码获取这些图片的地址,并打印出来:

https://example.com/image1.jpg
https://example.com/image2.jpg
https://example.com/image3.jpg

扩展

除了上述示例中的正则表达式,还可以根据具体的需求编写自定义的正则表达式。例如,如果只需要提取以.jpg、.png或.gif结尾的图片地址,可以使用以下正则表达式:

`src="(.*?\.(jpg|png|gif))"`

通过自定义正则表达式,可以更灵活地提取特定格式的图片地址。

总结

使用golang的正则表达式可以方便地获取网页中的图片地址。通过定义合适的正则表达式,并使用正则包中的方法,可以实现快速准确地提取图片地址的功能。

以上是关于使用golang正则表达式获取图片地址的介绍和示例。希望对你有所帮助!

相关推荐