鱼C论坛

 找回密码
 立即注册
查看: 3208|回复: 0

[技术交流] 正则表达式的用法

[复制链接]
发表于 2017-4-5 13:50:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
package main

import (
        "fmt"
        "io/ioutil"
        "net/http"
        "regexp"
        "strings"
)

func main() {
        resp, err := http.Get("http://www.baidu.com")
        // resp, err := http.Get("http://www.163.com")
        if err != nil {
                fmt.Println("http get error.")
        }
        defer resp.Body.Close()
        body, err := ioutil.ReadAll(resp.Body)
        if err != nil {
                fmt.Println("http read error")
        }

        src := string(body)

        //将HTML标签全转换成小写
        re, _ := regexp.Compile("\\<[\\S\\s]+?\\>")
        src = re.ReplaceAllStringFunc(src, strings.ToLower)

        //去除STYLE
        re, _ = regexp.Compile("\\<style[\\S\\s]+?\\</style\\>")
        src = re.ReplaceAllString(src, "")

        //去除SCRIPT
        re, _ = regexp.Compile("\\<script[\\S\\s]+?\\</script\\>")
        src = re.ReplaceAllString(src, "")

        //去除所有尖括号内的HTML代码,并换成换行符
        re, _ = regexp.Compile("\\<[\\S\\s]+?\\>")
        src = re.ReplaceAllString(src, "\n")

        //去除连续的换行符
        re, _ = regexp.Compile("\\s{2,}")
        src = re.ReplaceAllString(src, "\n")

        fmt.Println(strings.TrimSpace(src))
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 01:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表