找回密码
 立即注册
CeraNetworksBGVM服务器主机交流IP归属甄别会员请立即修改密码
查看: 124|回复: 10

請前輩指點一個preg_match截取正則

[复制链接]

28

主题

139

回帖

486

积分

中级会员

积分
486
发表于 2018-8-12 16:10:32 | 显示全部楼层 |阅读模式
本帖最后由 Tank 于 2018-8-12 16:21 编辑
[ol]
  • "download_url":"https:\/\/down.abc.com\/softs\/201706\/26\/40421\/40421.zip","download":"s2","Url":"https:\/\/down2.abc.com\/softs\/201706\/26\/40421\/40421.zip"}],
  • [/ol]复制代码


    我想分別截取到這兩個URL:



    https:\/\/down.abc.com\/softs\/201706\/26\/40421\/40421.zip

    https:\/\/down2.abc.com\/softs\/201706\/26\/40421\/40421.zip


    第一個URL我是這樣寫的:
    preg_match("#\"download_url\":\"(.+)\",\"download\":#",$content,$matches

    第二個URL我是這樣寫的:
    preg_match("#\"download\":\"s2\",\"Url\":\"(.+)\"}#",$content,$matches


    結果兩個都獲取不到那個url

    可以肯定是我的正則寫錯了,請懂得的前輩指點一下。

  • 回复

    使用道具 举报

    28

    主题

    139

    回帖

    486

    积分

    中级会员

    积分
    486
     楼主| 发表于 2018-8-12 19:01:50 | 显示全部楼层

    eqblog 发表于 2018-8-12 17:06

    也许是你引号用的不对
    实测可以获取到



    好像知道爲什麽了,不是獲取不到,而是我可能長期盜鏈,把我的小鷄IP屏蔽了。


    我在服務器上直接curl源站,發現内容是一個錯誤頁

    我本機curl得到的信息是正确的,截取也是正常的。

    這樣是不是要僞造來路啊?求前輩們給指點下怎麽僞造隨機來路,讓他不會屏蔽我的服務器IP?

    回复

    使用道具 举报

    91

    主题

    375

    回帖

    1797

    积分

    金牌会员

    积分
    1797
    发表于 2018-8-12 17:06:00 | 显示全部楼层


    你为什么不获取这段完整的json啊。。或者把这段改成json数据 明显比正则简单啊。。
    回复

    使用道具 举报

    28

    主题

    139

    回帖

    486

    积分

    中级会员

    积分
    486
     楼主| 发表于 2018-8-12 16:13:14 | 显示全部楼层

    eqblog 发表于 2018-8-12 16:13

    你为什么不获取这段完整的json啊。。或者把这段改成json数据 明显比正则简单啊。。 ...

    謝謝前輩回復,我目前只需要那兩個URL就好了

    回复

    使用道具 举报

    18

    主题

    191

    回帖

    850

    积分

    高级会员

    积分
    850
    发表于 2018-8-12 16:22:26 | 显示全部楼层
    本帖最后由 32MB.CN 于 2018-8-12 16:41 编辑

    第一个
    [ol]
  • /"download_url":"([^"])*/[/ol]复制代码
    测试正则可以上
    https://regex101.com/
  • 回复

    使用道具 举报

    31

    主题

    478

    回帖

    1710

    积分

    金牌会员

    积分
    1710
    发表于 2018-8-12 16:13:00 | 显示全部楼层
    "

    json解码之后可以自由操作
    回复

    使用道具 举报

    28

    主题

    139

    回帖

    486

    积分

    中级会员

    积分
    486
     楼主| 发表于 2018-8-12 16:40:29 | 显示全部楼层

    32MB.CN 发表于 2018-8-12 16:40

    第一个

    测试正则可以上

    preg_match("/"download_url":"([^"])*/",$content,$matches

    這樣寫嗎?好像不對,沒有轉義吧前輩。
    回复

    使用道具 举报

    11

    主题

    111

    回帖

    341

    积分

    中级会员

    积分
    341
    发表于 2018-8-12 16:41:54 | 显示全部楼层
    [ol]
  • /"download_url"\s*:\s*"(.*?)"/
  • /"download"\s*:\s*".*?"\s*,\s*"Url"\s*:\s*"(.*?)"/[/ol]复制代码
  • 回复

    使用道具 举报

    11

    主题

    111

    回帖

    341

    积分

    中级会员

    积分
    341
    发表于 2018-8-12 16:22:00 | 显示全部楼层

    Tank 发表于 2018-8-12 16:57

    preg_match("/"download_url":"([^"])*/",$content,$matches

    這樣寫嗎?好像不對,沒有轉義吧前輩。 ...

    既然你双引号不转义,那你把最外面的双引号换成单引号
    回复

    使用道具 举报

    91

    主题

    375

    回帖

    1797

    积分

    金牌会员

    积分
    1797
    发表于 2018-8-12 16:57:12 | 显示全部楼层
    [ol]
  • [/ol]复制代码

    也许是你引号用的不对
    实测可以获取到
  • 回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2024-6-2 05:45 , Processed in 0.069009 second(s), 3 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表