AppleScript基础语法讲解

--AppleScript变量有四种数据类型:number,string,list,record

--为变量赋值应当使用set to语句:   set 变量名 to 变量值

set x to 10

set y to 10


set xy to x * y

set emptyString to ""

set aSpaceString to " "

set helloString to "Hello"

set AppleScriptString to "AppleScript"

-- 使用“&”运算符将几个字符串连接在一起

set stringAndString to helloString & aSpaceString & AppleScriptString & " " & "wusong"

--使用关键字 the length of 来获取字符串的长度

set lengthOfString to the length of stringAndString


--numberstring之间的相互转化   使用“as类型名来显式声明

set numberToString to 100 as string

set stringToNumber to "100" as number


--dialog(对话框)  listrecorddialog中非常重要的两个组成部分

--调用格式:display dialog "提示文字" buttons {"按钮1", "按钮2", ...} default button "按钮名"

--除了提示文字,后面的都可以省略

--display dialog

display dialog "Welcome to AppleScript"

display dialog helloString

display dialog stringAndString

set exampleString to "\"Excuse me\"" --转义字符

display dialog exampleString

display dialog "blah blah \" blah" buttons {"取消", "确定"} default button "确定"

--dialog事件就涉及到了listrecord的概念。在指定按钮列表的时候使用了list类型,而在点击了按钮返回的结果就是recored类型。(list类似于数组,元素可以是任意类型数据。record类似于字典,上面的button returned就是key就是value



--list(列表)

--list表示格式为{"item1", "item2", "item3"}这里只列出了3个,列中中元素的个数可以是0也可以是任意多个。别彪中的元素可以是任意数据类型的变量

--1、使用set to语句赋值

set firstList to {100, 200.0, "number", -10}

set emptyList to {}

set listOfList to {1, "2", firstList}

--2、使用“&”运算符连接列表  可以直接将若干个列表中的元素合并并形成一个新的列表

set addToBeginList to {1}

set addToEndList to {6}

set currentList to {2, 3, 4, 5}

set modifiedList to addToBeginList & currentList & addToEndList

--3、获取和更改列表中的元素

--1)获取list中指定序号的元素有多种方法,例如:  将第二个元素修改为“3”

set item 2 of modifiedList to "3"

--2)可以为列表中的随机元素赋值,使用some item of关键字就可以了。

set randomX to some item of modifiedList

--3)可以使用the last item关键字来获取列表的最后一个元素,例如

set lastItem to the last item of modifiedList

--4)也可以用-1来获取最后一个元素,负数表示从列表尾端开始获取元素

set aList to {"hello", "hi"}

set aListItem to item -2 of aList

--5)获取整个列表,直接get就可以了(所有的变量类型同理)

get modifiedList

--4、获取子列表   使用“items 开始序号 through 结束序号 of“可以获取list中的子列表,例如:

set longList to {2, 3, 4, 5, 6, 7, 8, 9, 10}

--set shortList to items 6 through 9 of longList

--注意:从结束符号取到开始序号的方式获取的子列表是相同的

set shortList to items 9 through 6 of longList

--要逆向获取子列表,需要用到reverse关键字

set reverseList to reverse of longList

--5、获取列表的元素个数  使用lengthcount关键字即可

set listLength to the length of longList

set listCount to the count of longList

--6、添加元素到列表末尾   使用“set the end of 列表名 to 元素实现

set listNotAdded to {1, 2, 3, 4}

set the end of listNotAdded to 5

set the end of listNotAdded to {6, 7, 8, 9, 10}

get listNotAdded

--7、将string转化为list   方法就是在set to语句后加一个as list声明

set stringNotConvert to "string"

set convertStringToList to stringNotConvert as list

--8、使用&连接stringlist

--使用&可以连接stringlist变量,结果的类型由&运算符之前的变量类型决定

set stringBeforeAnd to "string"

set listBeforeAnd to {"list"}

--set stringAndList to stringBeforeAnd & listBeforeAnd

--set listAndString to listBeforeAnd & stringBeforeAnd

set stringAndList to (listBeforeAnd as string) & stringBeforeAnd

set listAndString to (stringBeforeAnd as list) & listBeforeAnd

--9、使用itemized关键字    使用itemized关键字可以将一个string对象分割成单个的字符并组成一个新的列表

set itemized to every character of stringAndString

--10、分割和恢复字符串

--可以将string分割成一个list,首先通过AppleScript‘s text item delimiters来指定分割符号,然后通过every text item of来实现分割。

--set defaultDelimiters to AppleScript's text item delimiters

--set AppleScript's text item delimiters to ""

set listAfterDelimiters to every text item of stringAndString

--set AppleScript's text item delimiters to defaultDelimiters

--get listAfterDelimiters


set defaultDelimiters to AppleScript's text item delimiters

set AppleScript's text item delimiters to ""

set restoredString to listAfterDelimiters as string

set AppleScript's text item delimiters to defaultDelimiters

get restoredString

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值