[ID CS4-CS6] Замена значения цвета

  • Автор темы Автор темы Masia
  • Дата начала Дата начала

Masia

Топикстартер
20 лет на форуме
Сообщения
143
Реакции
65
Вопрос от скрипто-чайника.

Подскажите, пожалуйста, как в условии прописать "если имя цвета начинается с TMP"?
Это может быть TMP-1, TMPtest, TMP_h1/h3 и т.д.
Если имя цвета написано конкретно, то замена срабатывает, если дописывать названия в условие через "или" - тоже срабатывает, но может ли это работать по началу имени?
Попробовала использовать греп в разных вариациях ("TMP\*", "TMP"+"\.+"), но это не срабатывает (я не уверена, что его можно использовать в данном случае, просто попробовала).

JavaScript:
var myDCs = app.activeDocument.colors; // коллекция DocumentColors (DCs)
var newColorValue = [0,0,0,100];

for (i=0;i<myDCs.length;i++){
    if (myDCs[i].name == "TMP" // ? но как сделать, "если имя цвета начинается с TMP", а не просто задавать точное имя
//~     || myDCs[i].name == "TMP-2"
    )
    myDCs[i].colorValue = newColorValue;
    }
 
вот прям сразу, не вникая никуда:
Код:
myDCs[i].name[0]+myDCs[i].name[1]+myDCs[i].name[2] == "TMP"
или
Код:
myDCs[i].name.substr(0,3) == "TMP"
 
Последнее редактирование:
  • Спасибо
Реакции: Masia
Спасибо! Оба варианта работают!
Второй мне больше нравиться 'thank'
 
Или
if (myDCs[ i ].name.indexOf("TMP")==0)
 
  • Спасибо
Реакции: bossrus и Masia
Поняла свою ошибку. После получения строки myDCs[ i ].name, надо было идти и смотреть что можно применить к строке, а я пыталась что-то придумать с самим именем.