首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vb.NET中的这个正则表达式有什么问题?

vb.NET中的这个正则表达式有什么问题?
EN

Stack Overflow用户
提问于 2010-12-23 02:41:08
回答 1查看 208关注 0票数 1

我有一个超文本文件,我正在尝试删除表格中的任何超文本标记,即删除<TABLE></TABLE>标记中的任何超文本标记。

然而,真正奇怪的是,我使用的正则表达式,(?<=<table((?!</table).)*)<(?!/table)[^>]+>,在PowerGREP或Expresso专业版中工作得很好,但是,当应用到vb.NET (或EditPad )中时,它不能工作!

我只使用了一个简单的替换方法:newString = Regex.Replace(oldString, "(?<=<table((?!</table).)*)<(?!/table)[^>]+>", string.Empty, RegexOptions.IgnoreCase)

我完全搞不懂了,不知道有没有人能帮帮我,看看为什么会这样,我需要做些什么改变才能让它在.NET中工作。谢谢!

以下是示例文本:

代码语言:javascript
复制
================
texttexetext

<TABLE>

  <TAG1>

    <TAG2>tabletext<TAG3>

    <TAG4>

</TABLE>

texttexttext
===============

PowerGREP中的最终输出为

代码语言:javascript
复制
================
texttexetext

<TABLE>


 tabletext


</TABLE>

texttexttext
===============
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-23 11:15:04

如果您指定的与换行符模式匹配,它将在EditPadPro 中工作。我没看到你在你的VB代码中这样做。

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

https://stackoverflow.com/questions/4512487

复制
相关文章

相似问题

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