【问题标题】:remove target and rel attributes from links with yahoo pipes regex从使用 yahoo 管道正则表达式的链接中删除目标和 rel 属性
【发布时间】:2013-06-03 19:17:31
【问题描述】:

我正在尝试使用正则表达式从 RSS 描述中删除 rel 和 target 属性,但似乎无法弄清楚。我可以删除类和样式,但 rel 和 target 不起作用。我已经尝试了很多使用 gskinner 的方法在那里工作,但是当我把它们带到 Pipes 时不起作用。

我试过了……

<a(.*?) target="(.*?)" 替换为<a$1

在重新设计以从标签中删除类或样式时,哪个有效,但不是这个?

有什么建议吗??

这是一个示例......

<p>Find out more at <a rel="nofollow" target="_blank" href="http://someurl.org/">someurl.org</a>. </p>

我想成为什么样的人

<p>Find out more at <a href="http://someurl.org/">someurl.org</a>. </p>

【问题讨论】:

  • 你能提供一个示例输入和预期的输出吗?
  • @DavidStarkey,我刚刚更新了我的原始问题以包含示例和预期输出。
  • 更新:似乎即使硬编码通用 URL href 仍会将 rel="nofollow" target="_blank" 添加到链接中。这只是我们必须处理的事情吗??

标签: regex href pipe yahoo target


【解决方案1】:

我相信这会如你所愿:

(.*)rel=".*" target=".*" (.*)

那么您的替换将只使用\1\2 或软件用来进行替换的任何内容。

例子:

http://regexr.com?353i5

【讨论】:

  • 是的,它在 regexr.com 上工作得很好,但由于某种原因,Yahoo Pipes 无法识别它?这是我正在处理的管道,pipes.yahoo.com/slcschools/8fbec2724abc6e1b704d6fb6923151cf。如您所见,rel 和 target 保留在描述底部的链接中...
  • 你用的是什么浏览器?我只看到target="_blank" (Firefox 20),这可能不是由管道引起的,而是由 Yahoo 或浏览器引起的,它指示链接在新页面/标签中打开。
  • 使用 FF21。我正在查看 Pipes 的调试器输出窗格中的标记,这与拉入我的提要阅读器代码中的内容相同...
  • 你不能在你的提要阅读器中进行替换吗?我的猜测是雅虎正试图在不同的窗口中打开链接(不是雅虎),以便让用户留在他们的网站上。没有官方来源,但我的假设。
  • 这就是我现在正在研究的内容。我认为您对他们提要中的链接也是正确的......就我目前搜索的内容而言,我想我会在页面加载后进行某种 jquery 查找和替换。
猜你喜欢
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多