首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex -展望/ LookBehind断言

Regex -展望/ LookBehind断言
EN

Stack Overflow用户
提问于 2014-08-02 17:49:39
回答 2查看 235关注 0票数 0

我想测试以下文本的正则表达式

代码语言:javascript
复制
  <div class="creditItem"><a href="/maren_addy/beauty-ful/"></a></div>      
<a href="abc.aspx">test</a>
<div class="creditItem"><a href="/maren_addy/beauty-ful2/"></a> </div>  

正则表达式

(?<=class=“creditItem”>.?href=)?(?=)

预期产出

代码语言:javascript
复制
/maren_addy/beauty-ful/
/maren_addy/beauty-ful2/

但是得到这个输出

代码语言:javascript
复制
/maren_addy/beauty-ful/
abc.aspx
/maren_addy/beauty-ful2/

有人能解释并纠正正则表达式吗?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-02 17:52:20

你可以试试下面的正则表达式,

代码语言:javascript
复制
(?<=class="creditItem"><a href=").*?(?=")

演示

C#代码应该是,

代码语言:javascript
复制
String input = @"  <div class=""creditItem""><a href=""/maren_addy/beauty-ful/""></a></div>      
<a href=""abc.aspx"">test</a>
<div class=""creditItem""><a href=""/maren_addy/beauty-ful2/""></a> </div>  ";
Regex rgx = new Regex(@"(?<=class=""creditItem""><a href="").*?(?="")");
foreach (Match m in rgx.Matches(input))
Console.WriteLine(m.Groups[0].Value);

依佩恩

票数 0
EN

Stack Overflow用户

发布于 2014-08-02 17:52:17

从索引1中获取匹配组

代码语言:javascript
复制
(?<=class="creditItem"><a href=")([^"]*)

演示

读取想变懒吗?三思。

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

https://stackoverflow.com/questions/25097809

复制
相关文章

相似问题

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