我正在升级我所有的网站并重新设计它们,以便所有 URL 的默认为小写,这迫使我也将我所有的图像名称和路径更改为小写。我使用的正则表达式完成了这项工作。不幸的是,他们也将许多其他内容更改为小写。
例如,这是一个典型的 div 之前的样子:
<div class="Cool R P Wx500">
这就是其中一些现在的样子:
<div class="cool r p wx500">
我强调了一些,因为一些 div(和其他标签)被改变了,而另一些则没有。
所以我想找到一个可以帮助我搜索特定类的正则表达式 - 例如酷,R 或 Wx500。这有点棘手,因为 1) 我的类并不总是按特定顺序列出,有些类名由单个字母组成(例如 B = border 和 R = float to the right)。
所以我想我想做的是搜索包含类“Cool”的 div,然后搜索包含类“R”的 div。如果我能让我的搜索区分大小写,那也会很有帮助。例如,我可能需要搜索类 R 的 div - 但仅在将其更改为小写的情况下(例如 [div class="cool r"]
可以吗? Dreamweaver 有一个非常好的正则表达式实用程序,但据我所知,它不能从一系列中选择一个类。我在 Mac 上工作,Dreamweaver 和 TextWrangler 是我的主要文本编辑器。
最佳答案
您可以使用以下内容
(class=".*?\b)r(\b.*?")
而不是 r
使用您要搜索的类并替换为 $1new$2
其中 new
是新的类名你要。
解释:
.*?
非贪婪匹配任意字符。\b
匹配单词边界("
算作边界)。- () 组,第一部分在组 1 ($1),第二部分在组 2 ($2)
例如,将匹配以下内容:
<div class="r">
<div class="r cool p wx500">
<div class="cool r p wx500">
<div class="cool c wx300 r">
但是下面的不会被匹配到:
<div class="runcool c wx300">
<div class="uncool cr wrx300">
<div class="uncool c wx300r">
<div class="R">
关于html - 需要一个正则表达式来匹配多个类之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22980156/