删除Golang中包含某些子字符串的行

2023-12-06

如何删除以某些子字符串开头的行[]byte, in Ruby通常我会做这样的事情:

lines = lines.split("\n").reject{|r| r.include? 'substring'}.join("\n")

如何执行此操作Go?


您可以使用正则表达式来模拟:

re := regexp.MustCompile("(?m)[\r\n]+^.*substring.*$")
res := re.ReplaceAllString(s, "")

(The OP 科基祖 went with "(?m)^.*" +substr+ ".*$[\r\n]+")

See 这个例子

func main() {
    s := `aaaaa
bbbb
cc substring ddd
eeee
ffff`
    re := regexp.MustCompile("(?m)[\r\n]+^.*substring.*$")
    res := re.ReplaceAllString(s, "")
    fmt.Println(res)
}

output:

aaaaa
bbbb
eeee
ffff

注意使用正则表达式标志 (?m):

多线模式:^ and $除了开始/结束文本之外还匹配开始/结束行(默认 false)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

删除Golang中包含某些子字符串的行 的相关文章

  • 具有多个等待组的管道中通道范围内的死锁

    我正在练习通过同时将计算分为 100 组来计算阶乘的挑战 我解决了 WaitGroups 上的很多问题 但仍然处于calculateFactorial函数我在通道部分的范围上陷入了僵局 希望有人能指出这个问题 谢谢 package main
  • 使用 google.protobuf.Timestamp 在 Go 中解析带有时区偏移的日期时间戳

    我正在创建一个将使用 GRPC 和 protobuf 的 Go 应用程序 我的 RPC 服务应获取包含类型的消息google protobuf Timestamp 解析它并最终将其保存在数据库中或对其执行更多操作 我对什么被认为是该类型的有
  • Google Cloud Kubernetes 上任务队列的替代方案

    我发现任务队列主要用于App Engine标准环境 我正在将现有服务从 App Engine 迁移到 Kubernetes 任务队列的一个好的替代方案是什么 推送队列是当前正在使用的队列 我在线阅读文档并浏览了此链接 何时使用 PubSub
  • 如何使用 Java 原生接口从 Java 调用 Go 函数?

    可以通过以下方式调用 C 方法JNA https en wikipedia org wiki Java Native AccessJava 中的接口 如何使用 Go 实现相同的功能 package main import fmt impor
  • Golang 优雅地关闭 HTTP 服务器并进行错误处理

    我正在让我的 HTTP 服务器正常关闭 我从帖子中获取了提示here https stackoverflow com questions 39320025 how to stop http listenandserve 并且到目前为止已经像
  • 检查值是否实现接口的说明

    我读过 Effective Go 和其他类似这样的问答 golang接口合规性编译类型检查 https stackoverflow com questions 17994519 golang interface compliance com
  • 我怎么知道我的所有 goroutine 确实正在使用 golang 的同步包等待一个条件

    我有一个应用程序 我正在创建多个 goroutine 来同时执行某个任务 所有工作协程都会等待条件 事件发生 一旦事件被触发 它们就会开始执行 创建完所有goroutines后 主线程在发送广播信号之前应该知道所有goroutines确实处
  • 如何将UTC时间转换为unix时间戳

    我正在寻找将 UTC 时间字符串转换为 unix 时间戳的选项 我的字符串变量是02 28 2016 10 03 46 PM并且需要将其转换为 unix 时间戳 例如1456693426 知道该怎么做吗 首先 unix时间戳14566934
  • 鸭子在 Go 中打字

    我想写一个Join函数接受任意对象String 方法 package main import fmt strings type myint int func i myint String string return fmt Sprintf
  • Golang GAE - 小胡子结构中的 intID

    这是一个Example https www dropbox com sh ur2ws1jnik6euef PjVJSwDTUc Blog Golang zip该应用程序的 关键代码在 golang code handler handler
  • 模板中的 bson.ObjectId

    我有一个具有 bson ObjectId 类型的结构 例如如下所示 type Test struct Id bson ObjectId Name string Foo string 我想在 html 模板中呈现它 Name Food a h
  • 如何在 Go 中将环境变量传递给测试用例

    在为 Go 编写测试用例时 传递需要提供给测试的环境变量的标准方法是什么 例如 我们不想在测试用例的源代码中嵌入密码 处理这个问题最标准的方法是什么 我们让测试用例寻找配置文件吗 还有别的事吗 看来我偶然发现了答案 将其添加到测试用例中可以
  • 解组转义 XML

    在 Go 中 我将如何解码此 XML 响应 我尝试过建立一个自定义UnMarshal方法在我的Answerstruct 但我运气不太好
  • 这两种方式哪一种是惯用的方式? time.Sleep() 还是自动收报机?

    我必须每分钟执行一些语句 我不确定我应该遵循以下哪一项 如果有人能解释内存和 CPU 方面的优缺点 那就太好了 时间 Sleep func main go func for time Sleep time Minute fmt Printl
  • 复杂数据类型作为 Go 中映射的键

    我正在尝试在 Go 中创建一个由大整数作为键的映射 effective Go 明确指出 结构体 数组和切片不能用作映射键 因为这些类型上没有定义相等性 这是有道理的 我当然可以将大整数转换为字符串并使用字符串作为键 但我在这里寻找更通用的解
  • 有队列实现吗?

    任何人都可以建议使用 Go 容器来实现简单快速的 FIF 队列 Go 有 3 种不同的容器 heap list and vector 哪一种更适合实现队列 事实上 如果您想要的是一个基本且易于使用的 fifo 队列 slice 可以满足您所
  • os.Mkdir 和 os.MkdirAll 权限

    我正在尝试在程序开始时创建一个日志文件 我需要检查是否 log如果不创建目录 则目录存在 然后继续创建日志文件 好吧 我尝试使用os Mkdir 也os MkdirAll 但无论我在第二个参数中输入什么值 我都会得到一个没有权限的锁定文件夹
  • 如何关闭 gorm 1.20.0 中的数据库实例

    由于我没有在 Close 函数中找到 gorm 实例 任何帮助将不胜感激 dbURI fmt Sprintf user s password s dbname s port s sslmode s TimeZone s username p
  • 在 Visual Studio Code 中调试 Go 测试

    在我的 Windows 计算机上 我安装了 Visual Studio Code 要手动运行测试 我进入控制台到项目文件夹并输入 go test main test go 它工作完美 但我遇到一种情况 我需要调试我的测试以了解发生了什么 为
  • 如何使用 GOPATH 的 Samba 服务器位置?

    我正在尝试将 GOPATH 设置为共享网络文件夹 当我进入 export GOPATH smb path to shared folder I get go GOPATH entry is relative must be absolute

随机推荐

  • 大文件支持在 C 编程中不起作用

    我正在尝试编译一个共享对象 最终在Python中与ctypes一起使用 用于构建对象的命令行是 gcc Wall O3 shared Wl soname borg stream lm m128bit long double fPIC D F
  • Dagger 2 子组件与组件依赖关系

    匕首1号plus 方法是我在以前的应用程序中经常使用的方法 因此我理解您可能希望子组件能够完全访问父图绑定的情况 在什么情况下使用组件依赖代替子组件依赖为什么 组件依赖性 当您想要保持两个组件独立时使用此选项 子组件 当您想要保持两个组件耦
  • MySQL自动ID列

    我想知道如何让 MySQL 自动有一列为每行添加 1 第 1 行将具有 ID 1 第 2 行将获得 ID 2 等等 例如 每次新用户在网站上注册时 他们都会被分配一个 ID 号 从 1 开始 然后是 2 依此类推 ID 用户名 密码1 鲍勃
  • 如果没有可变状态,你怎么能做任何有用的事情呢?

    我最近读了很多关于函数式编程的东西 我能理解其中的大部分内容 但我无法理解的一件事是无状态编码 在我看来 通过删除可变状态来简化编程就像通过删除仪表板来 简化 汽车一样 成品可能会更简单 但祝你好运 让它与最终用户进行交互 我能想到的几乎每
  • 带有在线 MySql/Sql 数据库的 Xamarin Android 应用程序 [已关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我想知道如何将 Android 应用程序与在线数据库连接 我在网上读了很多书 但我仍然悬而未决 我不知道哪种方法最好 我从谷歌看到了类似的东西SQL
  • 将 ItemizedOverlay 添加到我的地图视图

    我正在使用 osm 开发地图应用程序 我想在我的地图视图上创建一些标记 我正在使用以下代码 this mMyLocationOverlay new ItemizedOverlay
  • Pig 相当于 SQL GREATEST / LEAST?

    我试图找到相当于猪SQL 函数GREATEST and LEAST 这些函数是聚合 SQL 函数的标量等效项MAX and MIN 分别 本质上 我希望能够这样说 x LOAD file a b c csv USING PigStorage
  • DiggBar 是如何工作的?

    DiggBar 是如何工作的 我正在尝试制作 ASP NET MVC DiggBar 克隆 仅用于学习目的 有人对如何指定下框架内容的 url 有建议吗 您将如何在 MVC 中构建它 另外 我知道它是一个 iFrame 但他们如何定位它 以
  • 在Python模块中强制执行方法顺序[关闭]

    Closed 这个问题是基于意见的 目前不接受答案 处理必须按一定顺序调用方法的模块的最 Pythonic 方法是什么 例如 我有一个 XML 配置 在执行其他操作之前必须读取该配置 因为该配置会影响行为 The parse config
  • Blazor OnAfterRenderAsync 混淆

    我理解这个想法OnAfterRenderAsyc 但我不明白如何实现我想要的 我有OnInitializedAsync 基本上从文件中获取摘要信息 之后 我想调用另外 2 个方法 并根据这 2 个方法返回的信息 我想将一些 HTML 添加到
  • 使用 Linq 获取 CDATA XML 部分

    我到处搜索寻找访问 CDATA 部分文本区域的方法 并发现使用 linq 的非常温暖的解决方案 我需要提取 CDATA 部分中嵌入的 XML 以便提取不同的信息 我有以下 XML
  • 为什么 JSTL 数字格式值不支持运行时表达式?

    我有这个代码
  • 使用 Javascript 检测 Chrome 操作系统

    我想用 Javascript 检测 Chrome 操作系统 并且我正在使用navigator userAgent为了这 现在 我正在运行 Chrome 操作系统 我的导航器 userAgent 是 Mozilla 5 0 X11 CrOS
  • 如何找到 ComboBoxItem 的 ParentComboBox?

    如何获取 ComboBoxItem 的 ParentComboBox 如果按下 Insert 键 我想关闭打开的组合框 var focusedElement Keyboard FocusedElement if focusedElement
  • 如何使 Laravel 的 Validator $rules 成为可选?

    假设我有User模型有两种方法 User php class User extends Eloquent Validation rules private static rules array user gt unique users re
  • Objective-C 中有一些文字字典或数组语法吗?

    总是可以使用 vararg 方法调用创建 NSArray 和 NSDictionaries NSNumber 例如 NSArray arrayWithObjects a b c nil 这些可以在 LLVM 和 Clang 的新改进中使用内
  • 实现react-bootstrap-typeahead的组合框行为

    我正在尝试使用react bootstrap typeahead控制 但我很惊讶试图让它做我想做的事 实际上 我的页面上有其中两个 其中一个正在执行真正的异步查找 另一个我几乎希望表现得像组合框 我想要做的是选择一个项目 然后单击下拉菜单改
  • openCV:为 IplImage 添加透明度

    我有一个 3 通道 IplImage 我想创建一个 4 通道图像并将其 Alpha 通道设置为小于 1 0 的值以使其半透明 首先 我将 alpha 通道 第 4 个通道 设置为 0 5 cvSet Image c4 cvScalar 0
  • 从 NumPy 矩阵中的每一行中取出满足条件的前 N ​​个值

    我有一个numpy vector and a numpy array 我需要从矩阵中的每一行中获取小于 或等于 向量中相应行的前 N 个 比方说 3 个 值 所以如果这是我的向量 7 9 22 38 6 15 这是我的矩阵 20 9 7 5
  • 删除Golang中包含某些子字符串的行

    如何删除以某些子字符串开头的行 byte in Ruby通常我会做这样的事情 lines lines split n reject r r include substring join n 如何执行此操作Go 您可以使用正则表达式来模拟 r