Digamos que minha área de transferência seja "nome telefone e-mail" e qualquer texto e números aleatórios.
Pode o palavras ser separado e adicionado em uma lista?
Você não percebe, mas respondeu sua própria pergunta.
TL; DR
Digamos que sua área de transferência contenha a string "Kevin stackexchange.com 124098". Separe isso em uma lista de palavras assim:
words of (the clipboard) --> {"Kevin", "stackexchange.com", "124098"}
Você pode ler mais sobre este recurso embutido do AppleScript abaixo, onde eu dei uma explicação detalhada, incluindo por que, infelizmente, isso não será tão eficaz se um endereço de e-mail estiver envolvido:
words of "Kevin@example.com" --> {"Kevin", "example.com"}
Então você precisa se lembrar de restaurar a destruição "@" símbolo depois; ou, como você sugeriu, use text item delimiters definido para um caractere de espaço.
Informação detalhada: text item delimiters vs words
AppleScript text objetos são compostos de word e character elementos que se subdividem nos blocos de componentes de qualquer string: text subdivide-se em words e / ou characters; uma word subdivide-se em characters.
Além disso, o words subdividir text em intervalos marcados por espaços em branco de qualquer comprimento, o que é muito mais conveniente do que text item delimiters, que dividirá uma string em cada ocorrência individual de um delimitador especificado.
Por exemplo, definir text item delimiters ao space personagem, e aplicá-lo a uma frase de duas palavras com três espaços entre eles, você vai acabar com isso:
text items of "foo bar" --> {"foo", "", "", "bar"}
No entanto, obtendo em vez disso o words que compõem a cadeia de caracteres evita ter que lidar com itens de lista de seqüência vazia:
words of "foo bar" --> {"foo", "bar"}
Além disso, como text items, words de um text objeto irá subdividir a string naturalmente em uma lista de itens individuais.
Para completar, vou demonstrar rapidamente como characters irá decompor uma string:
characters of "foo" --> {"f", "o", "o"}
characters of "foo bar" --> {"f", "o", "o", " ", " ", " ", "b", "a", "r"}
Um pouco de cautela é garantido ao decompor uma string em words, acreditando que opera de forma idêntica (ou perto o suficiente) a um space delimitador. Não faz. Há um conjunto definido de caracteres que são considerados "caracteres de palavra" e um conjunto de caracteres que não são. "Caracteres do Word" são qualquer caractere que, quando agrupados, são considerados formadores de palavras. Se algum caractere não pertencente à palavra aparecer, a palavra será considerada dividida em duas palavras distintas nesse caractere.
Os caracteres do Word basicamente incluem as letras A-Z e a-z (e todas as variantes acentuadas), números de 0 a 9, o período ( . ) e o sublinhado ( _ ). assim "tH1s" é uma palavra e "this_is_a_single_word.123". Contudo, "this#is%four words"e, contraintuitivamente para mim, "over-achieving" é considerado duas palavras (o hífen é um caractere sem palavra).
Outros caracteres não verbais incluem obviamente o espaço; ou qualquer espaço em branco para esse assunto. Além disso, qualquer símbolo que você possa digitar com o teclado que não tenha sido incluído na lista de caracteres do word, exceto o cifrão ( $ ), o que eu chaticamente deixei de mencionar apenas para refletir o quão chato é que é aleatoriamente considerado um caractere de palavra:
words of "hello#$&world" --> {"hello", "$", "world"}
set myList to the words of (the clipboard)o que produzirá{"name", "email", "phone"}para os dados de exemplo fornecidos.