лучше (проще) использовать quoted form of
с использованием do shell script
. AppleScript экранирует текст для вас.
Косая черта перед регулярным выражением была неправильной, без нее ошибка исчезла, но в вашем регулярном выражении все еще была ошибка. С помощью sed вы хотите заменить вещи на входе, поэтому вы должны использовать регулярное выражение ввода, соответствующее вашему входу. Затем в скобках указывается та часть, которую вы хотите сохранить. Первая часть - найти все элементы до <
, вторая - адрес электронной почты, который вы хотите сохранить в скобках, и, наконец, закрывающий >
.
set selected_text to do shell script "echo " & quoted form of selected_text & " | sed 's/[^<]*<\\(.*\\)>/\\1/'"
Бест, Майкл / Гамбург