Posso criar uma lista na área de transferência?
Digamos que minha área de transferência é o nome do telefone e-mail e qualquer número aleatório de texto
As palavras podem ser separadas e adicionadas em uma lista?
Também o item pode ser texto e números, mas eu acho que a melhor maneira seria fazer um delimitador de texto por espaço?
applescript
copy-paste
Kevin
fonte
fonte
set myList to the words of (the clipboard)
o que produzirá{"name", "email", "phone"}
para os dados de exemplo fornecidos.Respostas:
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: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:
Então você precisa se lembrar de restaurar a destruição
"@"
símbolo depois; ou, como você sugeriu, usetext item delimiters
definido para um caractere de espaço.Informação detalhada:
text item delimiters
vswords
AppleScript
text
objetos são compostos deword
echaracter
elementos que se subdividem nos blocos de componentes de qualquer string:text
subdivide-se emwords
e / oucharacters
; umaword
subdivide-se emcharacters
.Além disso, o
words
subdividirtext
em intervalos marcados por espaços em branco de qualquer comprimento, o que é muito mais conveniente do quetext item delimiters
, que dividirá uma string em cada ocorrência individual de um delimitador especificado.Por exemplo, definir
text item delimiters
aospace
personagem, e aplicá-lo a uma frase de duas palavras com três espaços entre eles, você vai acabar com isso: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:Além disso, como
text items
,words
de umtext
objeto irá subdividir a string naturalmente em uma lista de itens individuais.Para completar, vou demonstrar rapidamente como
characters
irá decompor uma string:Um pouco de cautela é garantido ao decompor uma string em
words
, acreditando que opera de forma idêntica (ou perto o suficiente) a umspace
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:fonte