正则表达式 过滤网址

我x,百度发不了网址 我了个去,反正是所有可以访问的网址都要过滤掉。
用的是C# 在线等高手。!!!!
最新回答
孤岛re∷

2024-09-08 00:50:57

正则表达式,过滤出所有

超链接
除了一个url,例如:

<a href= 'http://www.abc.com/'> abc.com </a><br /><a href= 'http://www.edf.com/'> edf.com </a>

过滤:变为abc.com <br /><a href= 'http://www.edf.com/'> edf.com </a>没人知道怎么做么,要保留edf.com的

超级链接
,过滤掉其他的所有网址的超级链接。

FunctionautoLink(str)

Setra=NewRegExp

ra.IgnoreCase=True

ra.Global=True

ra.Pattern = "<a[^>]+>(.+?)<\/a>"

autoLink=ra.replace(str,"$1")

ENDFunction

扩展资料:

注意事项:

正则表达式,也称为正则表达式。这是

计算机科学
中的一个概念。

正则表达式通常用于检索和替换符合模式(规则)的文本,许多

编程语言
都支持
使用正则表达式
进行字符串操作。

例如Perl中内置了一个强大的正则表达式引擎。正则表达式的概念最初是由诸如(sed和GREp)这样的Unix工具推广的。

正则表达式通常缩写为“regex”。单数形式是regexp、regex,复数形式是regexps、regexes和regexen。

今天抽風了

2024-09-08 01:26:44

正则表达式,如何过滤掉除某个网址之外的所有超链接,如:
<a href= '
http://www.abc.com/
'> abc.com </a><br /><a href= '
http://www.edf.com/
'> edf.com </a>

过滤后,变为abc.com <br /><a href= '
http://www.edf.com/
'> edf.com </a>没人知道怎么做么,要保留edf.com的超级链接,过滤掉其他的所有网址的超级链接。

Function autoLink(str)
Set ra = New RegExp
ra.IgnoreCase = True
ra.Global = True
ra.Pattern = "<a[^>]+>(.+?)<\/a>"
autoLink = ra.replace(str,"$1")
END Function

这样子,会过滤掉所有的链接的。
醒来后我哭笑

2024-09-08 00:01:15

匹配网址的正则表达式
([\w-]+\.)+[\w-]+.([^a-z])(/[\w-: ./?%&=]*)?|[a-zA-Z\-\.][\w-]+.([^a-z])(/[\w-: ./?%&=]*)?
相思故

2024-09-08 00:34:23


好了,又又一次回复,不好意思,我是新手,慢慢一点一点深入

(<TD[^>]*>)[\r\n\s]*<P[^>]*>([^>]*)</P>\s?(</TD>)

这正则表达式完全搞定了,用 $1$2$3 替换
re.Pattern = "(<TD[^>]*>)[\r\n\s]*<P[^>]*>([^>]*)</P>\s?(</TD>)"
Data = re.Replace(Data,"$1$2$3")

请先备份,以防意外。
=================================================================

又一次回复,嘿嘿,写出一个,但要有条件:要删的P标签要和</TD>同一行,并且在前面。(只能想到这个笨方法了,靠</TD>来辨别是不是在TD里)
</?P[^>]*>(?=.*</TD>)
请先备份,否则有意外,别怪我。
========================================================
不知怎的 不支持(?<=exp),有点难缠。恕小生学艺未精。
期待高手,关注中……
========================================================
处理这些固定的字符串用Replace就好了
a = "<TD width=69 rowSpan=2> <P class=MsoNormal>日期 </P> </TD> "
a = Replace(Replace(a, "<P class=MsoNormal>", ""), "</P>", "")
MsgBox a
=========如果你非要用正则表达式,也拿你没办法===========
a = "<TD width=69 rowSpan=2> <P class=MsoNormal>日期 </P> </TD>"
Set re = CreateObject("VBScript.RegExp")
re.IgnoreCase = False '是否区分大小写
re.Global = True '只匹配搜索到的第一个还是全部
re.Pattern = "</?P[^>]*>" '定义正则表达式,不管P标签里面等于什么鬼都好。
a = re.Replace(a, "") '用空字符""替换匹配到的
MsgBox a
追问
你写的啥,复制粘贴。。。。