2009-10-16 159 views
0

我是一个新手 我试图创建在记事本++正则表达式替换所有href="http://www.reactivemail.com/(any series of charcters)"正则表达式查找包含路径但不包含“。”的所有hrefs。 (点)

基本上所有我想要的是把一个/所有HREF年代末,但只有当它不包含点例如,它是像html的

所以这里的文件的路径是什么,我想找到

href="http://www.reactivemail.com(some path to a directory)"

却忽略href="http:www.reactivemail.com(some path).some extension"

,并要添加/到HREF的,只有去到一个目录下,并且缺少一个/上月底

这是我使用正则表达式:

(href="http:\/\/www\.reactivemail\.com[^\.*.*"*]*) 

,并替换为\1/

它找到我想要的完美

仅适用于具有.file扩展名的href,它仍然找到路径并忽略后面的所有内容。而不是因为它包含一个点

+0

如果一个目录名称包含一个点,该怎么办? – 2009-10-16 10:39:38

+0

没有directorys包含点我试过你的解决方案,但它不工作,因为它发现一切,直到行末 例如href =“http://www.reactivemail.com/pricing”>定价 而不是只是href =“http://reactivemail.com/pricing 然而,它的确满足了所有与它的点 我不会打扰,如果没有500个左右的链接需要更新 – ash 2009-10-16 10:56:42

回答

0

这是一个有点危险(见我对你的问题的评论),但你可以尝试搜索无视一切:

(href="http://www.reactivemail.com/[^."]*[^/])" 

,并更换

\1/" 
+0

更确切地说:替换'(1)''(')''((href =“http:\/\/www \ .reactivemail \ .com [^。] * [^ /]' – 2009-10-16 14:24:17

0

试试 (http[s]*\://[^\"]+)/([^\."/]+)" 并用\1/\2/"替换。这应该捕获每个http和https url,但会丢失其中包含句点的文件夹。

相关问题