代码拉取完成,页面将自动刷新
package utils
import "strings"
// RemoveItemsContainingSubstring
// 从字符串数组切片里移除包含substr字符串的项并移除连续空格字符
func RemoveItemsContainingSubstring(arr []string, substr string) []string {
result := make([]string, 0)
for _, s := range arr {
if !strings.Contains(s, substr) && s != "" {
result = append(result, RemoveMultiSpaces(strings.TrimSpace(s)))
}
}
return result
}
// RemoveItemsNotContainingSubstring
// 从字符串数组切片里移除不包含substr字符串的项并移除连续空格字符
func RemoveItemsNotContainingSubstring(arr []string, substr string) []string {
result := make([]string, 0)
for _, s := range arr {
if strings.Contains(s, substr) {
result = append(result, RemoveMultiSpaces(strings.TrimSpace(s)))
}
}
return result
}
// RemoveFirstString
// 从字符串数组切片里移除第一个元素
func RemoveFirstString(slice []string) []string {
if len(slice) == 0 {
return slice // 或者返回nil,根据你的需求而定
}
// 将第二个元素到最后一个元素前移
copy(slice, slice[1:])
// 缩短切片长度
return slice[:len(slice)-1]
}
// RemoveMatchString
// 按正则表达式移除字符串数组切片中的元素
// method为1则移除匹配项
// method为2则移除不匹配项
func RemoveMatchString(slice []string, pattern string, method int) []string {
// 如果method不为1和2,则返回原切片
if method != 1 && method != 2 {
return slice
}
result := make([]string, 0)
for _, item := range slice {
match := MatchString(item, pattern)
// 如果method为1,那么移除匹配项,所以判断未匹配的加入返回切片
if method == 1 && !match {
result = append(result, item)
}
// 如果method为2,那么移除不匹配项,所以判断匹配的加入返回切片
if method == 2 && match {
result = append(result, item)
}
}
return result
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。