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

Illustrator脚本如何按精确名称选择图层,排除模糊匹配结果

Illustrator图层精确选择脚本修改方案

你原来的脚本使用的/shadow/i正则属于包含匹配,只要图层名称里有shadow子串就会命中,所以会误选其他带shadow的图层。要实现仅选中指定名称的图层,直接把匹配规则改成精确匹配目标名称即可。


方案1:正则精确匹配(适合固定匹配shadow、shadow-7的场景)

直接修改正则表达式限制匹配范围,仅完全匹配目标名称:

var aDoc = app.activeDocument;
var pI = aDoc.pageItems;
aDoc.selection = null;
for (i=pI.length-1; i>=0; i--) {
    // ^匹配字符串开头,$匹配字符串结尾,(-7)?表示-7后缀可选,i保留不区分大小写的匹配规则
    if (pI[i].name.match(/^shadow(-7)?$/i) != null) {
        pI[i].selected = true;
    }
}

方案2:白名单数组匹配(适合后续需要频繁调整匹配目标的场景)

把需要选中的图层名称放在数组里统一维护,修改更灵活:

var aDoc = app.activeDocument;
var pI = aDoc.pageItems;
// 可自行增减数组内的目标图层名称
var targetNames = ["shadow", "shadow-7"];
aDoc.selection = null;
for (i=pI.length-1; i>=0; i--) {
    // 转小写后匹配保留原脚本不区分大小写的特性
    if (targetNames.includes(pI[i].name.toLowerCase())) {
        pI[i].selected = true;
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:15:01