请教 js 中文正则表达式 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a Javascript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
Javascript 权威指南第 5 版
Closure: The Definitive Guide
raighne
V2EX    Javascript

请教 js 中文正则表达式

  •  
  •   raighne 2016-10-11 22:57:40 +08:00 2547 次点击
    这是一个创建于 3363 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如何从“初三十班某某同学”中提取出某某来

    16 条回复    2016-10-12 12:49:09 +08:00
    jeremaihloo
        1
    jeremaihloo  
       2016-10-11 23:14:33 +08:00 via Android
    你这个题目发了 14 分钟,有 20 次点击,却没人回答的原因是你问题之前没有百度和谷歌过,并不是大家不会
    yoa1q7y
        2
    yoa1q7y  
       2016-10-11 23:17:48 +08:00   1
    raighne
        3
    raighne  
    OP
       2016-10-11 23:26:27 +08:00
    @yoa1q7y /[^初三十班(.+)同学$]{5}/ 这样优化了一下,多谢
    yoa1q7y
        4
    yoa1q7y  
       2016-10-11 23:32:25 +08:00
    @raighne 差点一口血喷在屏幕上,你自己试了么。。。
    正则里的这些字符感觉你完全没理解
    raighne
        5
    raighne  
    OP
       2016-10-11 23:47:31 +08:00
    @yoa1q7y 正在学正则表达式,我想限制下匹配长度,/[^初三十班(.+)同学]{5}/ 这样写打印出来确实是我需要的,我也迷糊了,明天把正则表达式好好看看
    sutra
        6
    sutra  
       2016-10-11 23:54:32 +08:00
    /初三十班(.+)同学 /.exec('初三十班某某同学')[1]
    "某某"
    an168bang521
        7
    an168bang521  
       2016-10-12 00:13:10 +08:00
    正则的一些知识点;感兴趣可以看一下,自己写岂不是更好;
    github 地址:
    https://github.com/Broszhu/zhuanbang-Javascript-notes/tree/master/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F
    upczww
        8
    upczww  
       2016-10-12 00:20:58 +08:00
    Python 版:
    import re
    re.search(pattern = r'初三十班(.+)同学', string = '初三十班某某同学').group(1)

    主要就是用到正则表达式里面用小括号分组。
    isCyan
        9
    isCyan  
       2016-10-12 01:17:53 +08:00 via Android   1
    你都知道有正则这么个东西了还来问,
    DiamondbacK
        10
    DiamondbacK  
       2016-10-12 01:53:11 +08:00
    @raighne 你这串正则就是正宗的瞎几把搞。
    xfspace
        11
    xfspace  
       2016-10-12 01:56:23 +08:00 via Android
    估计楼主下个问题就是,怎么把课程表美化。
    sneezry
        12
    sneezry  
       2016-10-12 08:12:59 +08:00 via Android
    用非贪婪模式试试吧,/初三十班(.+?)同学 /

    有时间还是学学正则,正则绝对是个有用的小工具,楼上说的都是为了楼主好
    sneezry
        13
    sneezry  
       2016-10-12 08:13:54 +08:00 via Android
    @sneezry 上面正则表达式里最后多了一个空格,用的时候记得删除掉
    araraloren
        14
    araraloren  
       2016-10-12 08:54:04 +08:00
    ~~自己还是做过尝试之后再把问题提出来,大部分人都不喜欢伸手党的

    say "初三十班某某同学同学" ~~ m:P5/初\w\w 班(\w+)同学 /;

    say "初三十班某某同学同学" ~~ m:P5/初\w\w 班(\w+?)同学 /;

    运行测试: http://ideone.com/2l3naY
    hxndg
        15
    hxndg  
       2016-10-12 09:28:31 +08:00
    @raighne = =看得我一头黑线。。。。
    7654
        16
    7654  
       2016-10-12 12:49:09 +08:00
    https://regexper.com/#/初三十班(.+)同学 /
    楼主这个网站可以用的到
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2530 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 15:08 PVG 23:08 LAX 07:08 JFK 10:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86