package main import ( "bytes" "fmt" "log" "regexp" "sort" "strings" "golang.org/x/net/html" ) // SplitTextByChinesePunctuation splits the input text by Chinese punctuation and spaces. func SplitTextByChinesePunctuation2(text string) []string { // Regular expression pattern for Chinese punctuation and spaces pattern := `[,。!?、;:]|\s+` re := regexp.MustCompile(pattern) // Split the text by the pattern parts := re.Split(text, -1) // Filter out empty strings resulting from split var result []string for _, part := range parts { trimmed := strings.TrimSpace(part) if trimmed != "" { result = append(result, trimmed) } } return result } // RemoveDuplicates removes duplicates from a sorted slice. func RemoveDuplicates2(strs []string) []string { if len(strs) == 0 { return strs } sort.Strings(strs) j := 0 for i := 1; i < len(strs); i++ { if strs[j] != strs[i] { j++ strs[j] = strs[i] } } return strs[:j+1] } // CleanHTMLTags removes all HTML tags from the input HTML string and returns the plain text. func CleanHTMLTags2(htmlContent string) (string, error) { doc, err := html.Parse(strings.NewReader(htmlContent)) if err != nil { return "", err } var buf bytes.Buffer var f func(*html.Node) f = func(n *html.Node) { if n.Type == html.TextNode { buf.WriteString(n.Data) } for child := n.FirstChild; child != nil; child = child.NextSibling { f(child) } } f(doc) // Remove leading and trailing white space trimmedText := strings.TrimSpace(buf.String()) return trimmedText, nil } func main2() { htmlContent := `


致各潜在供应商:
按照公司车辆使用计划,现需采购商务车一辆。请各位潜在供应商参加我司北京办公区行政车辆的谈判采购。现就有关事宜告知如下: 1.采购需求


物资名称

规格型号

计量单位

暂定数量

备注

商务用车

别克GL8


1

排气量3.0升以下
2.付款方式
谈判结束,与中标单位签订合同后,付100%预付款。 3.投标人资格要求:
3.1 基本资质:4S店需要具备合法的经营凭证和资格,具备企业营业执照、税务登记证等。以及获得汽车品牌的授权,包括销售、使用店铺名称、商标、标识等。
3.2 销售和售后服务体系:需要建立完善的汽车销售和售后服务体系,保证相应的配件供应,提供及时、有效的售后服务。严格遵守家用汽车产品“三包”、召回等规定,确保消费者合法权益。

3.3 信用要求:未被“信用中国”网站列入失信被执行人、重大税收违法案件当事人名单、政府采购严重违法失信行为记录名单。近两年内在中交(厦门)电子商务有限公司无不良行为记录。 4.采购资料的获取:
采购人于2024年12月27日至2025年1月2日,通过中交集团交融智链平台发布采购公告。请有意参与投标单位参与响应。
报价方式:请各意向投标人将加盖公章的报价单在1月2日16时前发送至邮箱:zhanghan@ccccltd.cn。 5.发布公告的媒介:
本次采购公告在中交集团交融智链平台上公开发布。 6.采购人信息:
·联系人:张女士
·联系电话:13701077123

中交(厦门)电子商务有限公司
2024年12月27日 ` plainText, err := CleanHTMLTags(htmlContent) if err != nil { fmt.Println("Error:", err) return } fmt.Println(plainText) characterArray := SplitTextByChinesePunctuation(plainText) uniqueArray := RemoveDuplicates(characterArray) for k, v := range uniqueArray { log.Println(k, v) } log.Println(len(characterArray), len(uniqueArray)) }