在AppleScript中,在标记后面取X符号并保存到变量中。

我正在寻找一种方法,通过AppleScript将11个符号在之后的 ?v= 中的一部分,并将它们保存到一个变量中。这是一个链接的例子。

https://www.youtube.com/watch?v=PxDK95Q5qN0&ab_channel=TheLateShowwithStephenColbert

所以我需要一个小脚本来获取剪贴板中的链接 识别出11个符号后的符号 ?v=,把这11个符号(PxDK95Q5qN0),并将其保存到一个变量中(例如 extract)。

我确实找到了一个部分解决方案 此处 – 但这个只有在两个部分之间的时候才会有效,如 ?v=&. 该解决方案的问题是,许多链接都很短,而且没有最后的&符号(例如。https://www.youtube.com/watch?v=PxDK95Q5qN0)

在这里,我很感谢大家的帮助和指点! :]

解决方案:

无论你将剪贴板设置为,如,,。

set the clipboard to "https://www.youtube.com/watch?v=PxDK95Q5qN0&ab_channel=TheLateShowwithStephenColbert"

或者,例如,,,。

set the clipboard to "https://www.youtube.com/watch?v=PxDK95Q5qNO"

下面是… 例子 AppleScript 编码 后面的11个字符返回 ?v=:

set extract to do shell script ¬
    "sed -Ee 's/.*[?]v[=]([a-zA-Z0-9]{11}).*/\\1/'<<<" & ¬
    (the clipboard as text)'s quoted form
  • 注意: \\?v\\= 可以代替 [?]v[=] 的部分 sed 指挥 反正 ?= 被视为 正字 而不是 特殊字符.

  • 此外,如果目标字符的数量从11个改变,但 ?v=& 在你的例子中,仍然在发挥作用,那么这个 检索词,并在下面进一步说明,处理它。

    .*[?]v[=]([a-zA-Z0-9]+[^&]).*


使用来自 https:/regex101.com 来解释 检索词 用在 sed 指挥:

兴趣的主要部分是 捕获组 ([a-zA-Z0-9]{11})后返回的,因为这就是返回的内容,如果它直接存在于 ?v=网址.

enter image description here


enter image description here

给TA打赏
共{{data.count}}人
人已打赏
解决方案

Maven exec-maven-plugin和maven-resources-plugin没有运行,不知道为什么。

2022-4-21 4:00:14

解决方案

Django-Graphene: 没有名为'graphql_jwt'的模块。

2022-4-21 5:00:09

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索