在Dreamweaver中搜索和替换的正则表达式

问题描述:

我想编写一个正则表达式来在Dreamweaver中进行一些替换。我需要html中的<abbr>标签的正则表达式。在Dreamweaver中搜索和替换的正则表达式

例如,在我的网页下面的文本将出现:

Photo: NASA 

我想它变成:

Photo: <abbr title="National Aeronautics and Space Administration">NASA</abbr> 

注意,在我的HTML单词“NASA”的一些实例已被<abbr>标签包围。如果是这种情况,请不要在其周围额外添加<abbr>标签。

+0

给我们一个例子来说明示例文本和期望的输出。 – 2012-07-23 16:10:58

+0

@vaman有这段文字在我的网页: 照片:NASA 我想通过remplace它: NASA 但如果字NASA已经ABBR标签之间,不要放置额外的标签 – user1546333 2012-07-23 16:14:40

+0

当你说正则表达式和Dreamweaver,你在说Dreamweaver中使用正则表达式查找的查找/替换功能? – 2012-07-23 19:16:06

我已经舍弃了lookbehinds。我不确定什么类型的正则表达式Dreamweaver支持。

尝试使用下面的正则表达式:

NASA(?!(*</abbr>)|(\.\w+)|(")) 

它不会匹配NASA的任何实例是:遵循

  • 通过</abbr>不管空白的美国航空航天局之间和</abbr>
  • 其次一个.和其他字符,例如nasa.gov被认为是无效的。
  • 后面跟着/,例如, test.gov/nasa/被认为无效。
  • 后面跟着一个"它是无效的。
  • 当它在这样的报价规则表达式将与美国航空航天局:

    "This NASA is surrounded by quotes" 
    
  • ,但不会当它是唯一在报价:

    "NASA" 
    
  • 。 。 。你可以看到这里的趋势,并在必要时加上附加的“或”声明。

我用下面的字符串进行了测试:

这句话与美国航天局结束。这个正则表达式将与美国国家航空航天局合作,但不是 ,其网址为nasa.gov/test/nasa/page.html。它赢得了'牛逼工作, <简称> NASA < /简称>因为它' S按<缩写> 标签包围。 "这个美国国家航空航天局被引号"包围,但将会是 匹配,因为它' s没有这样格式化"美国航空航天局"是。

然后,你可以简单地做一个发现使用正则表达式,并替换为:

<abbr title="National Aeronautics and Space Administration">NASA</abbr> 

注:引号是,我不能避开的限制,或者我不不知道如何轻松解决。我建议如果你必须为大量使用某种脚本语言(例如Python)的文档执行此操作,并避免一个大的正则表达式并将其分解为逻辑语句,但这完全是另一个问题。

祝你好运!

+0

此正则表达式不使用Dreamweaver :( – user1546333 2012-07-23 19:30:15

+0

工作尝试[@ nickb的答案](http://*.com/a/11619098/586621),如果不为你工作有可能在查找一个复选框/替换你必须切换,在Dreamweaver中使用正则表达式编辑:看[这里](http://www.adobe.com/devnet/dreamweaver/articles/regular_expressions_pt1.html)的更多信息,这 – 2012-07-23 19:31:38

+0

我取消选中“区分大小写”和您正则表达式的工作,但我有词“NASA”在一些网址,至极我不想更换 – user1546333 2012-07-23 19:34:34

如果lookbehinds的支持,这是相当简单的。

搜索:

(?<!>)NASA 

替换:

<abbr title="National Aeronautics and Space Administration">NASA</abbr> 

这个发现没有与>前缀NASA条目。所以,NASA会匹配,>NASA不会。

+0

我有一个“无效量词? 美国宇航局“错误 – user1546333 2012-07-23 19:30:09

搜索:NASA

替换为:

<abbr title="National Aeronautics and Space Administration">NASA</abbr> 

然后搜索:

<abbr title="National Aeronautics and Space Administration">NASA</abbr> 

田田:

<abbr title="National Aeronautics and Space Administration"><abbr title="National Aeronautics and Space Administration">NASA</abbr></abbr> 

与更换! =)