文本: -----A-------B---------B---------------B-------------B------B---------B
注"---"长度是不确定的 我想取"A"到与他之后的第一个"B"之间的文本,用表达式"A(?<content>.*?)B" 可以取到,
其结果是: 正则:"A(?<content>.*?)B", 结果:"A-------B" 可我还有一个需求 就是当"A"与第一个"B"之间的文本的长度在10至40之内的才匹配出来,如是我写了以下正则: 正则:"A.{10,40}B", 结果:"A-------B---------B---------------B" 这就不是我想要的结果了,因为他会从最后所定义的长度内的最后一个开始匹配而不是第一个,
注"---"长度是不确定的 我想取"A"到与他之后的第一个"B"之间的文本,用表达式"A(?<content>.*?)B" 可以取到,
其结果是: 正则:"A(?<content>.*?)B", 结果:"A-------B" 可我还有一个需求 就是当"A"与第一个"B"之间的文本的长度在10至40之内的才匹配出来,如是我写了以下正则: 正则:"A.{10,40}B", 结果:"A-------B---------B---------------B" 这就不是我想要的结果了,因为他会从最后所定义的长度内的最后一个开始匹配而不是第一个,
解决方案 »
- HTTP 错误 405.0 - Method Not Allowed
- hibernate在.net中的应用,请问谁有这样的例子?
- dropdownlist疑问
- 在asp.net中如何实现下载文件,下载后再自动通过专门的软件打开功能?
- 讨论:大家平时有没有用XML来代替数据库保存数据?
- 怎样再后台代码里设置textbox的textmode属性?
- 求一正则表达式,例如:要求输入非负的:32.98 或者32 改如何写这一正则表达式。。。???
- 9. 请写一个HTML页面,在第一个页面上单击Open按钮后打开一个新窗体(子窗体,原来窗体还存在,子窗体上菜单,工具栏,任务栏等一个都不需要),在新窗体上有UserName,Email,Address,Type等信息,其中Type为下拉列表,填写完后点击
- 水晶报表错误:Logon failed?
- Specified argument was out of the range of valid values.
- Sql 语句 求教
- 帮忙转成HQL语句。。。
如果只是要截取A到第一个B之间的 可以后边加个?
代表正则的懒惰模式 不加? 代表贪婪模式
即一直匹配到字符串最后一个符合的位置
如 :....................<a href="www.665.cn">遛遛网</a><a href="www.360buy.com">京东</a><a href="www.suning.cn">苏宁</a><a href="/more.aspx">更多</a>.....................我写正则:<a\shref=[\"'](?<link>.*?)[\"']>更多</a>结果为:<a href="www.665.cn">遛遛网</a><a href="www.360buy.com">京东</a><a href="www.suning.cn">苏宁</a><a href="/more.aspx">更多</a>很显然这不是我想要的结果,我只想要取"更多"的超链接? 这样的正则该怎么写,
可以取到 href 和title
string str = ":....................<a href=\"www.665.cn\">遛遛网</a><a href=\"www.360buy.com\">京东</a><a href=\"www.suning.cn\">苏宁</a><a href=\"/more.aspx\">更多</a>.....................";
Regex reg = new Regex(@"<a[^>]*?href=(['""\s]?)([^'""\s]+)\1[^>]*?>更多</a>");
foreach (Match m in reg.Matches(str))
{
Response.Write(m.Groups[2].Value);
}
/*
/more.aspx
*/
周公这儿有篇图文并茂的,应该对你有帮助
http://blog.csdn.net/zhoufoxcn/archive/2010/03/09/5358644.aspx