我正在使用AppleScript搜索一堆具有特定(自定义)属性的联系人。
这是我的代码:
tell application "Address Book"
set allPeople to every person whose last name = "CERTAIN_LAST_NAME"
get properties of item 1 of allPeople
end tell
具体的姓氏只是我知道具有该特定财产的人。
(修剪)输出:
CATEGORIES:Contacts
UID:{MY_EMAIL_ADDRESS}:426
X-ABUID:SOME_ID_TAG:ABPerson
END:VCARD
我想找到包含属性UID
的所有人,其值为{MY_EMAIL_ADDRESS}:some_number
。我是OS X和AppleScript的新手,所以我不确定该怎么做。我搜索了一种基于自定义属性过滤我的联系人的方法:
tell application "Address Book"
set allPeople to every person whose UID = "{MY_EMAIL_ADDRESS}:426"
get properties of item 1 of allPeople
end tell
但这给了我这个错误:
my_script.scpt:69:72: execution error: The variable UID is not defined. (-2753)
感谢您对此问题的任何帮助!
答案 0 :(得分:3)
您找不到UID的原因是因为它不作为字段存在,即使在您的数据中也是如此。如果您查看您提供的代码段的底部,则会显示“END:VCARD”。如果你查看剪切文本,你应该看到“vcard:”BEGIN:VCARD“。
包含此文字的字段为vcard
,您可以搜索该文字。
tell application "Address Book"
set allPeople to every person whose vcard contains "UID:{YOUR_EMAIL_ADDRESS}:426"
get properties of item 1 of allPeople
end tell
我当然没有你的价值观,但我能够在我自己的联系人中搜索包含已知UID值的卡片。