You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用JavaScript正则替换为样式表所有CSS选择器添加父类.template-container

解决方案

问题原因

你原有正则(.*)(,|{)使用了贪婪匹配,会从行首一次性匹配到最后一个逗号/左大括号,多个逗号分隔的并列选择器会被识别为单一匹配项,因此只能在最开头插入父类。

最优正则方案

匹配规则(需开启全局匹配模式)

(?!@)([^\s,][^{,]+)(?=\s*(?:,|{))

规则说明:

  • (?!@):负向预查,跳过@media、@keyframes等CSS at规则,避免错误添加父类
  • ([^\s,][^{,]+):匹配单个独立选择器,排除开头的空白、逗号,同时不会匹配到后续的样式规则内容
  • (?=\s*(?:,|{)):正向预查,确认当前匹配项后续为可选空白加逗号/左大括号,保证匹配的是合法选择器

替换规则

.template-container $1

可选优化(多选择器自动换行)

如果需要让逗号分隔的多个选择器每个单独占一行,可以在上述替换完成后,新增一步替换:

  • 匹配规则:,\s*
  • 替换规则:,\n.template-container

效果验证

按上述规则处理后,即可得到你期望的转换效果,所有单个选择器都会被正确添加.template-container父类,并列选择器也不会遗漏。

内容的提问来源于stack exchange,提问作者Timbo773

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 09:39:03