【发布时间】:2021-12-25 14:01:20
【问题描述】:
我想测试一个字符串是否包含两个文本项(“&”或“和”)。如果字符串包含任何一个项目,我希望测试返回 True,如果不包含,则返回 False。 我正在使用这个测试来确定指定的字符串(输入到表单字段中的人的名字)是一个人的名字还是一对夫妇的名字。
问题:此代码似乎在返回 True 和 False 之间随机摇摆。我尝试过直接测试字符串,测试对字符串的变量引用,检查不同的字符串,并在运行测试之前显式重置测试变量的值......但是返回的布尔值仍然是不可预测的。
我错过了什么? (如果这是 AppleScript 的限制问题,我愿意使用 JavaScript 来检查字符串)。
当测试在变量 x 和 y 上运行时,下面的代码应该返回 True,但在变量 z 上运行时应该返回 False(因为“Southerland”的“and”不是一个独立的词)。
set x to "John Jacob & Johanna Smith"
set y to "Kathy and Kurt Gallows"
set z to "Barbara Southerland"
set theName to x
set coupleIdentifiers to {"&", " and "}
if theName contains some text item of coupleIdentifiers then
set testIt to true
else
set testIt to false
end if
get testIt
【问题讨论】:
标签: string object applescript contains