首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >获取包含起始值和结束值的子字符串的正则表达式

获取包含起始值和结束值的子字符串的正则表达式
EN

Stack Overflow用户
提问于 2013-09-26 16:52:21
回答 3查看 144关注 0票数 0

我想使用regex提取一个字符串,包括起始值和结束值。

例如:

代码语言:javascript
运行
复制
Regex regex = new Regex("A Bylaw(.*?)" + @"\.");
var v = regex.Match("blah blah blah A Bylaw to provide for the government and management of the Water Works System in the City and the collection of Rents, Rates, and charges for water. blah blah blah");

这将返回:

本条例旨在为市政水务系统的政府及管理及收取租金、差饷及水费订定条文。

我在找:

一项规定城市水务系统的政府和管理及收取租金、差饷和水费的附例。

EN

回答 3

Stack Overflow用户

发布于 2013-09-26 17:06:52

只需将正则表达式更改为包含它们即可。

代码语言:javascript
运行
复制
Regex regex = new Regex(@"A (Bylaw.+?\.)");

http://rubular.com/r/4GRUECzqfx

票数 1
EN

Stack Overflow用户

发布于 2013-09-26 17:58:50

=新Regex("(?i)A Bylaw(.*).");

这给你的比赛结果,不麻烦的情况下“一个附例”。

如果你所通过的文本有“附例”,那么这是完美的..。

@我是,非常感谢你发布的链接。

票数 0
EN

Stack Overflow用户

发布于 2016-11-16 12:26:27

据我所知,您尝试从文本中提取包含关键字的短语,为此,可以使用:var regex = new Regex(@"(\.|^)?([^.]*Bylaw.*?(\.|$))"); https://regex101.com/r/KjxWWC/1

  • (\.|^)?将匹配文本的一个点或开头,对于第一个短语很有用。
  • [^.]*将匹配任何不是点的东西
  • Bylaw是你要搜索的东西
  • .*?会匹配任何东西直到..。
  • (\.|$)将匹配短语的结束点。

注意,如果在文本var matches = regex.Matches("...")上使用它,结果将是matches[n].Groups[1]

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19034090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档