为了账号安全,请及时绑定邮箱和手机立即绑定

正则表达式从开始到新行获取每个字符串?

正则表达式从开始到新行获取每个字符串?

Go
慕森卡 2022-05-18 15:34:02
我有一个这样的字符串:Name: Yoza JrAddress: Street 123, CanadaEmail: yoza@gmail.com例如,我需要使用正则表达式获取数据直到换行从Name:获取Yoza Jr到new line名称数据开始所以我可以有3个数据Name, Address, Email如何正则表达式从开始到新行获取每个字符串?顺便说一句,我将在 golang 中使用它:https ://regex-golang.appspot.com/assets/html/index.html
查看完整描述

2 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

该模式^.*$应该可以工作,请参阅此处的演示。这假设它.*不会在全点模式下运行,这意味着它.*不会超出\r?\n每行末尾的换行符。

如果要捕获字段值,请使用:

^[^:]+:\s*(\S+)$

您想要的数量将出现在第一个捕获组中。


查看完整回答
反对 回复 2022-05-18
?
Cats萌萌

TA贡献1805条经验 获得超9个赞

我建议你使用模式^(.+):\s*(.*)$

演示:https ://regex101.com/r/Q9D4RM/1

它不仅会对您给出的字符串产生 3 个不同的匹配,而且字段名称(“:”之前)将被读取为匹配的第 1 组,而值(“:”之后)将被读取为第 2 组。因此,如果您想要键值对,您可以为每个匹配项搜索第 1 组和第 2 组。

如果不清楚,请告诉我,以便我详细说明。


查看完整回答
反对 回复 2022-05-18
  • 2 回答
  • 0 关注
  • 105 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信