首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex新行不起作用

Regex新行不起作用
EN

Stack Overflow用户
提问于 2018-01-20 12:08:23
回答 2查看 72关注 0票数 2

我想把文字放在括号里。例如:

(a)除收货时须付给卖方的货款外,未核证的买方支票,以${未经核证的支票限额}为限;及

(b) {根据“纽约市行政法”在关闭前产生并以金钱支付的所有影响房地的义务应由卖方在关闭时或之前解除。

卖方的陈述。

我想从这篇文章中得到:

  1. {未经认证的检查限额}
  2. {根据纽约市“行政法”规定,在关闭前发生并以金钱支付的所有影响房地的义务应由卖方在关闭时或之前解除。

我当前的regex {(.*?)}不适用于新行。

我该怎么修改它?

EN

回答 2

Stack Overflow用户

发布于 2018-01-20 12:36:11

除换行符外,该点显式匹配任何字符。使用RegexOptions.Singleline更改此行为,并使点匹配任何字符。

代码语言:javascript
复制
var regex = new Regex("{(.*?)}", RegexOptions.Singleline);

基于RegexOptions.Singleline的MSDN

指定单行模式。更改点(.)的含义。因此它匹配每个字符(而不是除\n以外的每个字符)。

示例中的换行符在html中消失了,因此产生了误解。

票数 1
EN

Stack Overflow用户

发布于 2018-01-21 05:33:09

我可以建议您使用像{[^}]+}这样的正则表达式,Regex可以在新的行上正常工作!

代码语言:javascript
复制
var result = Regex.Matches(txt, @"{[^}]+}")
    .OfType<Match>().Select(c => c.Value).ToList();

[ C# Fiddle Demo ]

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

https://stackoverflow.com/questions/48355957

复制
相关文章

相似问题

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