我有这样的网站地图:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://mywebsite.com/article1</loc>
<lastmod>2014-08-10</lastmod>
<changefreq>monthly</changefreq>
</url>
<url>
<loc>http://mywebsite.com/article2</loc>
<lastmod>2014-08-10</lastmod>
<changefreq>monthly</changefreq>
</url>
<url>
<loc>http://mywebsite.com/article3</loc>
<lastmod>2014-08-10</lastmod>
<changefreq>monthly</changefreq>
</url>
</urlset>
我只想保留里面的网址。你知道如何匹配其他人并取而代之吗?非常感谢你!
答案 0 :(得分:1)
如果您想要的结果如下:
http://mywebsite.com/article1
http://mywebsite.com/article2
http://mywebsite.com/article3
搜索:
\h*<url\b.*?(http[^<]+).*?</url>|<.*?>\s*
并替换为捕获的URL(在第一个带括号的组中捕获)
\1
\h
匹配任何horzintal空间,[^<]+
匹配一个或多个不是<
请务必选中. matches \r and \n
答案 1 :(得分:0)
您似乎打算匹配内部元素。多行正则表达式匹配内容可以完成这项工作:(http。*)
答案 2 :(得分:0)
您可以使用此正则表达式匹配除URL之外的所有内容,并替换为任何内容:
.*<url>.*\n?.*<loc>|<\/loc>(.*\n?){4}<\/url>