applescript: adicione o conteúdo da área de transferência para listar

0

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?

Kevin
fonte
1
Para uma solução, apenas faça set myList to the words of (the clipboard) o que produzirá {"name", "email", "phone"} para os dados de exemplo fornecidos.
CJK
@CJK, você deve responder ao seu comentário para que ele possa receber votos positivos.
user3439894
Eu não tinha certeza se isso era contra a etiqueta, mas ok então
CJK
@CJK, Não é, e tecnicamente as respostas devem ser postadas como resposta, não como comentários. Vou postar uma resposta como um comentário se eu não tiver tempo para escrever uma boa resposta que seja mais do que uma resposta de tipo de comentário de uma linha ou se eu pretendo escrever uma resposta real um pouco mais tarde, etc. comentar resposta como uma resposta +1.
user3439894

Respostas:

2

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 "[email protected]" --> {"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"}
CJK
fonte