Очень плохо знаком с Applescript и ищу помощь. У меня уже есть скрипт, который увеличит число в конце этого имени, RM5_CA_0_4C_288.tif, на единицу, и он прекрасно работает. Но иногда мне нужно увеличить эту строку на 1, но в ней есть буквы до или после последнего набора чисел (то есть _A288.tif или _288A.tif). Как мне увеличить число на 1 с буквами до или после него?
Мой сценарий копирует имя файла в буфер обмена, увеличивает его на единицу и вставляет результат обратно в буфер обмена.
Спасибо за помощь!
Оригинальный скрипт для увеличения на один:
try
set oldName to the clipboard
set AppleScript's text item delimiters to {"_"}
set oldNumber to the last text item of oldName
set AppleScript's text item delimiters to {"."}
set oldNumber to the first text item of oldNumber
set newNumber to oldNumber + 1
set newNumber to newNumber & "tif" as string
set xVar to 1
set AppleScript's text item delimiters to {"_"}
set newName to ""
repeat while xVar is less than 5
set newName to newName & text item xVar of oldName & "_"
set xVar to xVar + 1
end repeat
set newName to newName & newNumber
set the clipboard to newName as string
on error tell application "Firefox" to display dialog "Error! Check the 'set AppleScript's text item delimiters to' section. Change the delimeter?" buttons ["OK"] default button 1
return
end try
В скрипте выполняется включение букв до и после цифр:
set oldName to the clipboard
set AppleScript's text item delimiters to {"_"}
set oldNumber to the last text item of oldName
get result
set returnedString to do shell script "echo " & quoted form of result & " | tr -d '[:upper:]'"
get result
set returnedString to do shell script "echo " & quoted form of result & " | tr -dc '[:digit:]'"
set result to result as number
set newNumber to result + 1
set newNumber to newNumber & ".tif" as string
get result
set theName to do shell script "echo " & quoted form of result & " | tr -d '\"_'"