IMPORTXML 内的 XPATH 在查询中带有撇号

fri*_*man 5 google-sheets

问题是如何找到正确的方法来搜索包含撇号的字符串。该字符串是导入 URL 中的title标签a

所以出发点是: =IMPORTXML("http://www.some.com";"//a[contains(@title,'Mac's Issue')]") 这当然行不通,因为里面有原始的撇号。如何以正确的方式逃离这个角色?我尝试过使用""and\但没有成功。

编辑:具有此类问题的示例表https://docs.google.com/spreadsheets/d/1aGaAOpUeF8jZlL6La6zDw9nlcidOqA1apBt18mPUH7w/edit?usp=sharing

Max*_*rov 4

编辑

XPath 有一个 concat 函数,这应该有帮助:

//code[contains(.,concat('"',"Mac","'","s Issue"))]

公式为:

=IMPORTXML("http://www.some.com"; "//code[contains(.,concat('""',""Mac"",""'"",""s Issue""))]")

参考:


您可以尝试使用双引号而不是单引号:

=IMPORTXML("http://www.some.com";"//code[contains(.,""Mac's Issue"")]")

该字符串现在用双引号引起来:“Mac's Issue”。

注意:每个双引号使用两次,因为函数的参数是一个字符串,并且它存储在双引号本身中。

  • 谢谢你,麦克斯!但如下所述:它对于这种特殊情况很有用,但并不能真正解决问题:)实际上只是将 `//code[contains(.,'Mac's Issue')]` 替换为 `//code[contains(., ""Mac 的问题"")]` 完成这项工作。但!当查询(我们搜索的值)包含“'”和“”时,问题就会出现。 (2认同)