从纯文本中检索 URL 方案变量



>我需要一种方法来从纯文本字符串中检索URL方案变量。我从以下AppleScript开始:

set inputStr to "{query}"
set my text item delimiters to ": "
set taskName to first text item of inputStr
set listName to last text item of inputStr
set urlScheme to "app://url/add?color=" & color & "&height=" & height
tell application "System Events"
    open location urlScheme
end tell

我想添加大约十几个可能的变量(例如,宽度、面积、月份等),但是这种使用"第一个文本项"或"最后一个文本项"的解决方案实际上不起作用,因为用户将无法记住输入文本字符串的正确顺序。相反,我想要的是一种以任何顺序解析文本识别变量的方法。例如,一个用户可以输入:

color: green height: 10 area: 14 month: July

另一个:

height: 10 year: 2016 month: August

URL方案的相关部分将被填充,其余部分留空。

任何期望用户正确键入文本字符串的程序都是在自找麻烦,并且需要进行大量的错误检查,但是......给自己一个战斗的机会,并要求输入采用更可解析的格式,例如:

"color:green, height:10, area:14, month:July"

然后,将 AS 分隔符设置为逗号,以获取"key:value"格式的数组条目。然后,在循环中,您可以处理每个数组条目,以根据需要将键和值附加到 url。

通过去除用户可能已添加的键和值周围的前导空格和尾随空格来执行一些额外的健全性检查。

最新更新