代码之家  ›  专栏  ›  技术社区  ›  Evgenii

将包含utf-8编码字符串的url与字符串进行比较

  •  0
  • Evgenii  · 技术社区  · 8 年前

    我有一个url

    "/complete/search?nolabels=t&client=chrome&ds=yt&q=%D1%8D%D1%82%D0%BE%20%D1%80%D1%8D%D0%BF%20%D0%B8%D0%BC%D0%BF%D1%80&hl=ru"
    

    和一系列关键词。我需要确定url是否包含这些单词。

    我检查了这个字符串 %D1%8D%D1%82%D0%BE%20%D1%80%D1%8D%D0%BF%20%D0%B8%D0%BC%D0%BF%D1%80 使用 utf-8 encoder 我想我必须改变 % 到 \x 让它发挥作用。

    我尝试使用正则表达式

    select "/complete/search?nolabels=t&client=chrome&ds=yt&q=%D1%8D%D1%82%D0%BE%20%D1%80%D1%8D%D0%BF%20%D0%B8%D0%BC%D0%BF%D1%80&hl=ru" rlike encode("это рэп импр", "UTF-8");
    

    但它不接受二进制作为参数 base64(encode("это рэп импр", "UTF-8")) 不返回我需要的字符串类型。

    我的问题是,我该如何扭转这种局面 это рэп импр 进入这个 %D1%8D%D1%82%D0%BE%20%D1%80%D1%8D%D0%BF%20%D0%B8%D0%BC%D0%BF%D1%80 ?

    1 回复  |  直到 8 年前
        1
  •  0
  •   Evgenii    8 年前

    找到这个

    SELECT reflect("java.net.URLDecoder", "decode", "/complete/search?nolabels=t&client=chrome&ds=yt&q=%D1%8D%D1%82%D0%BE%20%D1%80%D1%8D%D0%BF%20%D0%B8%D0%BC%D0%BF%D1%80&hl=ru", "UTF-8");
    
    推荐文章