@jprk1 каждый пятый пусть делает действие 1
IF ( [[AKK_NUM]] % 5 ) Task2
ELSE Task1
Как можно посчитать количество симолов в переменной? Создал JS код:
var text = 'lxzmtx'
upper = text.match(/[A-Z]/g).length
lower = text.match(/[a-z]/g).length
nums = text.match(/[0-9]/g).length
[[ALL_SYMBOL]] = upper + lower + nums
Поток №1 : TypeError: Result of expression 'text.match(/[A-Z]/g)' [null] is not an object. во время выполнения действия 807978941
Прогнал код в java скрипте макроса, всё выдал четко. В чем проблема?
Если регулярное выражение содержит флаг g, метод вернёт массив, содержащий все сопоставления. Если сопоставлений не было, метод вернёт значение null.
А применением length к null вызывает ошибку
TypeError: Result of expression 'text.match(/[A-Z]/g)' [null] is not an object.
Если в исходной строке будет заглавные, прописные буквы и цифры, то скрипт сработает нормально.
var text = 'lxzmtxQ1'
upper = text.match(/[A-Z]/g).length
lower = text.match(/[a-z]/g).length
nums = text.match(/[0-9]/g).length
[[ALL_SYMBOL]] = upper + lower + nums //вернёт 8
Прогнал код в java скрипте макроса, всё выдал четко.
Попробуй этот же скрипт в консоле браузера, будет такая же ошибка.