不_要_挂_科 2022-10-14 20:25 采纳率: 0%
浏览 16

能否解释一下这句正则表达式的意思

img


这个是今天看到的一段代码,我想问一下这句正则表达式是什么意思,有没有人可以解释一下,谢谢!
里面的F、fA之类的我感觉没有在以前的正则表达式里面见过,希望可以解释一下

  • 写回答

1条回答 默认 最新

  • 饭堂家老 2022-10-14 23:10
    关注

    你应该是后半段看不懂是什么意思

    %[0-9a-fA-F][0-9a-fA-F]
    

    这一段表面上匹配的是一个百分号和两个十六进制字符,0123456789ABCDEFabcdef都属于16进制字符
    实际这一段是用来匹配不在ascii中的文字,比如说中文

    举例来说,百度被URL加码后就变成了这个样子

    https://www.baidu.com/s?wd=%E7%99%BE%E5%BA%A6
    

    而这一段的中文【百度】被转义成了【%E7%99%BE%E5%BA%A6】
    所以你的正则想要匹配中文或者其他语言的网址,就需要这么匹配,当然这是在URL加码后的情况下才能匹配到

    img

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 10月14日