【问题标题】:Remove all commas in <title> tags删除 <title> 标签中的所有逗号
【发布时间】:2013-01-07 13:09:58
【问题描述】:

我位置上的最后一个人在标题标签中用逗号表示高兴。我需要删除 40,000 个 html 产品页面的标​​题标签中的所有逗号。是否有正则表达式来查找标题标签中的所有逗号?我希望我能找到所有带有正则表达式的逗号并在dreamweaver中替换它们。这可能吗?

格式通常如下

(打开标题标签)产品,产品,81120,
(打开标题标签)产品产品, 产品, 98564,
(打开标题标签)产品产品, 产品产品, 98564,
(打开标题标签)产品,产品产品,98564,

最后的数字是一个5位数的产品#

任何帮助将不胜感激

【问题讨论】:

  • 请给我们确切的格式,是 之间的吗?你必须更具体一点
  • 真的没有结束标题标签吗?
  • 字,字,81120,字字字字
  • 都在标签之间
  • 对不起,我没有更具体

标签: html regex replace find dreamweaver


【解决方案1】:

您可以查找一个逗号,然后&lt;/title&gt; 是逗号后第一个&lt; 之后的内容,并将它们替换为一个空字符串:

,(?=[^<]*</title>)

请注意,这假设您将在编辑器中执行此操作。当涉及到未知的 HTML 时,永远不要相信正则表达式。如果您将在代码中使用它,最好使用 DOM 解析器来正确确定替换范围。它还假定字符串 &lt;/title&gt; 不会出现断章取义(例如在 javascript 代码中),或者您可以在此正则表达式可能混淆的任何地方手动查看替换过程。 (谁的想法是再次拥有 40k HTML 文件?希望他们不要创建新的标题标签!)。

【讨论】:

    【解决方案2】:

    描述如何在 PHP 中执行此操作的好博客:http://www.thatsquality.com/articles/how-to-match-and-replace-content-between-two-html-tags-using-regular-expressions

    我认为要在 Dreamweaver 中执行此操作,您可能需要使用反向引用,例如:

    (&lt;Title&gt;\S\s),+(\S\s&lt;\/Title&gt;)

    在替换中使用这个: $1 $2

    正如所指出的 - 需要循环成功 - 认为这是 IDE 将支持的东西,但可能并非如此。

    好帖在这里:http://somerandomdude.com/2006/05/25/dreamweaver-regular-expressions/

    【讨论】:

    • 你需要多次运行这个正则表达式来去掉所有的逗号。
    • 警告:不熟悉 Dreamweaver 并已改编。
    • 为什么要把 \ 放在 [] 之前?只有组(\s 代表空格,\S 代表非空格)需要转义。
    • @Destrictor 右大括号和反斜杠也需要转义,即使在字符类中也是如此
    • @Destrictor 正在修改之前的答案而没有添加想法。
    【解决方案3】:

    你可以用这个 正则表达式:([\,]+)

    【讨论】:

    • 这将删除所有逗号,而不仅仅是标题中的逗号。
    • 我对正则表达式感兴趣。还在更新吗?
    猜你喜欢
    • 2018-01-18
    • 2012-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-03
    相关资源
    最近更新 更多