基本上,我需要替换大约 3000 个文档中的 css 类警报,因为它会破坏 bootstrap css。我可以通过搜索 (?<=class=")(.*)(?=")
找到整个 css 类,但我不能只使用 (?<=class=".*)(alert)(?=.*")
找到警报类或类似的东西。
基本上,给定一组数据:
<div class=" big alert solid">Alert alert</div>
<div class="alert solid">Alert alert</div>
<div class=" big solid">Alert alert</div>
我只想在类属性中找到文本警报。
我觉得如果有一个可行的解决方案,它将在前瞻/后视中涉及可选的通配符。像这样的东西:
(?<=class="(.)?)(.*)(?=(.)?")
最佳答案
你可以试试这样的表达方式:
(?<=class\s?=\s?")(.*?)alert(.*?)(?=")
然后替换占位符就像
$1$2
导致
<div class=" big solid">Alert alert</div>
<div class=" solid">Alert alert</div>
<div class=" big solid">Alert alert</div>
关于php - 正则表达式仅在其他两个特定字符串之间查找特定字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21790246/