正则表达式 :时间:(\d{4}-\d{2}-\d{2})(.+?)</table>
匹配的字符串:时间:2008-07-02tfhtrtryrt时间:2008-06-30ghjhewrewrwerewrewrewrewrew</table>我想匹配第二个日期和中间的字符串,现在老是匹配第一个日期。各位高手踊跃发言啊!!
匹配的字符串:时间:2008-07-02tfhtrtryrt时间:2008-06-30ghjhewrewrwerewrewrewrewrew</table>我想匹配第二个日期和中间的字符串,现在老是匹配第一个日期。各位高手踊跃发言啊!!
解决方案 »
- C# 中不同项目之间的方法可以互相调用吗
- MSDN网站一直上不去,求解释
- 如何将List<...>的数据"双向"绑定到Listbox ?给个例子
- listbox问题
- C#编写的贪吃蛇的经典代码
- 如何获取局域网内电脑的共享文件夹列表???
- web.config文件中数据库连接字符问题
- devexpress xtragrid有没有方法临时获取一列的总和
- C# SOCKET 如何实现一个文件从一台电脑指定位置传输到另外一台电能指定位置?????
- System.Web.Mail类是否需要SMTP支持20分大送?????????????
- gridview用SqlDataSource排序,翻页之后排序才生效
- IDE
时间:2008-07-02tfhtrtryrt时间:2008-06-30ghjhewrewrwerewrewrewrewrew </table>
你说只匹配第一个是什么意思?
你的表达式 无法匹配 带空格的啊,\w匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。匹配不了空格啊
是这个结果啊...
这样就可以了。
Match m = Regex.Match(test, @"时间:(\d{4}-\d{2}-\d{2})(((?!时间:).)*)</table>", RegexOptions.IgnoreCase);
if (m.Success)
{
MessageBox.Show(m.Groups[1].Value + "\n" + m.Groups[2].Value);
}
string test = "时间:2008-07-02tfhtrtryrt时间:2008-06-30ghjhewrewrwerewrewrewrewrew </table>";
Match m = Regex.Match(test, @"时间:(\d{4}-\d{2}-\d{2})(((?!时间:).)*)</table>", RegexOptions.IgnoreCase);
if (m.Success)
{
MessageBox.Show(m.Groups[1].Value + "\n" + m.Groups[2].Value);
}