在尝试从字符串中解析一些数据时,我决定使用Satimage的regxp添加。但是,我遇到了一些我无法弄清楚的问题。根据文档,默认的正则表达式引擎是Ruby,这很棒,因为它支持lookbehind和lookahead,我可以使用它们。我在Ruby中测试了我的正则表达式:
ruby-1.9.2-p290 :056 > ref = "ABCD_oxox\"><title>Reset"
=> "ABCD_oxox\"><title>Reset"
ruby-1.9.2-p290 :057 > xx = /.*(?=\">)/.match(ref).to_s
=> "ABCD_oxox"
ruby-1.9.2-p290 :058 >
所以我知道它有效。但是,在AppleScript中,我似乎无法让它工作:
-- AS Begin
set RefID2 to "ABCD_oxox\"><title>Reset"
set xx to find text ".*?(?=\\\">)" in RefID2 with regxp and string result
-- AS end
错误“此表达式的某些部分未返回任何结果。”编号-2763
我很难过......有人知道这个吗?
答案 0 :(得分:0)
加载项是否正常工作。你尝试过像“。*”这样简单的东西吗?
以下代码适用于Applescript:
set aa to "ABCD_oxox\"><title>Reset"
set aa to "puts /.*(?=\">)/.match(" & quoted form of aa & ").to_s"
do shell script "ruby -e " & quoted form of aa
您可以轻松地将上述内容包装到函数中。