猿问

有人懂正则表达式吗,请教一下

(?<=\s)\d+(?=\s)

\b\d+\b

这两个表达式有什么区别?都是匹配两边是空字符的一串连续的数字的啊,只不过第一个用了零宽断言

萧雁翎
浏览 2099回答 4
4回答

kumin

上下俩个表达式效果是一样滴 上面利用的是零宽断言 匹配空白符之间的内容下面利用的是\b 是定位单词的开始和结束位置 所以效果是一样的你有疑惑可能是对\b 和\s 有点混淆\b是找到位置 不匹配东西\s是匹配空白符  举个栗子:  \babc\b 可以匹配到  "abc"                 但\sabc\s 只能匹配到  " abc "  前后必须有空白符的以上

慕数据8267187

IXWQRLBBNEHBCIMIELBUAAONAJMCBIZVXHVSKJDMPVVOFFMQUZQTBBOHUKAHTLIBECIZCJMFKIMWMFNWZPJILVYKRNATGOXXDCTJZZFLVISSWJGZFCPCOBPKODJWTXXKCAXGPSONMLYYBRIOBODNEKXSUUOSXZUBNUDQMOKULMLMSWGVIYSCRQTMSYROKKHUMOIEOYBOUOXAPKWJPFEKXALOSEKEKIBHUOICCRVZZJPTWADQMYUQQMPFJMZWFRGMDRXUALVGDMCVLRYMMDDXHQMVTCCKTXHUTIWPPFCTTYYESIDTALHSYPLFPRYLVFJFJBEOHGLVPCSCCJKNNWIKRRKSBVPIVHDZWJDJVFZMEGCATDWMMJWZIYBEYYYISSDGOGSCVILIVDNDEZFLLSIEOLLEUGXTJWQMIGWGENZFFCIYYBVIPBKOMSMBOVCCYAWTJMQMSSYYCOXAQZMIYCLFVDTIZFQADUBTQFFYPYIRHPCRXJFZPWCISVZKNVHUUDQPGWZWFYHFWPPYVZWHASOLLRDKQHYFBQNHHHNDLWNOUIEYPSSVSSIDIXOXNKAWZTAAOXMFCCFILHLONCFSQGTJFPPMDBXUQGTTXQVYMROEHOZTWERFRJFIYOHDXYLSIXQMCZFFOISHYXZCCSFVSSSBPRGRRCGMVCGJUGGDTPFIYPSLVNUHRNTARIVPBAZNGOCCIYVINWROYOAUHRZRJVRDUQXHKNBAMETXJPVBIPVCMJIHRKRGQNEHSGMPQJJWAKAASUIOIOLKBUYRVAGCMSCLFCCODHWPMJJSYPSVXPHBARNGQATXYANPMVPORCFPPOAQANTSPUOBZVKIIPUKQXNUKCVLRYONNERYQFVRYEKHKRIWINWWSICILSFTIUUXXTXDXAKHMIANDJGQWTANWVBUQGMOHRUKFXDHAUEDDEFCGLUXUXMHNHSPIUPWMYJRXEHY

花满楼的小前端a

断言不参与结果

千秋此意

js不支持反向预搜索,你上面那个正则(?<=\s)会报错的

慕田峪3555374

上面那个不匹配空白符
随时随地看视频慕课网APP
我要回答