V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cnqncom
V2EX  ›  PHP

正则把头都搞大了

  •  
  •   cnqncom · 2017-09-21 20:06:17 +08:00 · 6175 次点击
    这是一个创建于 1965 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前面学了后面忘,怎么搞?
    http://data.cnqn.com/Article/read/82.html
    这些规则太难记了,有啥好办法吗?把这个打印出来,贴在上墙?
    53 条回复    2017-09-23 11:28:25 +08:00
    malcolmyu
        1
    malcolmyu  
       2017-09-21 20:09:40 +08:00
    写多了就熟练了,贴墙上没意义啊
    vibbow
        2
    vibbow  
       2017-09-21 20:10:12 +08:00 via Android
    买个 regex magic
    aver4vex
        3
    aver4vex  
       2017-09-21 20:11:36 +08:00
    多用呗
    ctsed
        4
    ctsed  
       2017-09-21 20:12:27 +08:00 via Android   ❤️ 2
    不用正则头像也很大呀
    Hellert
        5
    Hellert  
       2017-09-21 20:14:49 +08:00
    没必要记住吧,反正我每次都是现查现学,正则也不是频繁使用。
    基本规则笔记软件里记一下。
    lin07hui
        6
    lin07hui  
       2017-09-21 20:16:07 +08:00
    不记,一边打一参考,打多了就熟练
    Hellert
        7
    Hellert  
       2017-09-21 20:16:30 +08:00   ❤️ 2
    regexr.com 挺好用,分析正则很有帮助。
    donething
        8
    donething  
       2017-09-21 20:18:16 +08:00 via Android
    没必要硬记啊,稍微有点印象后,即用即查
    Perry
        9
    Perry  
       2017-09-21 20:19:44 +08:00
    学下 Theory of Computation
    Loyalsoldier
        10
    Loyalsoldier  
       2017-09-21 20:23:40 +08:00
    哈哈,现在基本已经熟练使用了
    cisisustring
        11
    cisisustring  
       2017-09-21 20:25:16 +08:00 via Android
    把头……,我有一个大胆的想法
    FYK
        12
    FYK  
       2017-09-21 20:30:46 +08:00
    基本操作没啥问题吧,复杂的再查呗
    xray887
        13
    xray887  
       2017-09-21 20:32:42 +08:00
    什么头
    Sikoay
        14
    Sikoay  
       2017-09-21 20:34:59 +08:00 via Android   ❤️ 1
    学学 NFS 吧,学学正则的算法实现,会好很多
    aheadlead
        15
    aheadlead  
       2017-09-21 20:37:01 +08:00
    aa6563679
        16
    aa6563679  
       2017-09-21 20:40:51 +08:00 via iPhone
    就记了个\w\d\s 其他的都现场查的。。
    UnknownR
        17
    UnknownR  
       2017-09-21 21:27:31 +08:00
    其实我觉得挺容易的。。。多练几个例子,之前写东西需要用到文本分析,就基本把常见的查找类熟悉了一遍,楼主可以自己摸索,写过几个实例基本就能熟悉了,没必要去精通,它只是辅助工具
    carlclone
        18
    carlclone  
       2017-09-21 21:33:07 +08:00 via Android
    马克学习
    wizardoz
        19
    wizardoz  
       2017-09-21 21:35:58 +08:00
    买本书,用的时候翻一下,这就够了
    关键是要知道正则这东西,知道它能做到哪些功能,具体细节一时记不住没什么。
    dsg005
        20
    dsg005  
       2017-09-21 21:37:12 +08:00
    码农基本功
    a1044634486
        21
    a1044634486  
       2017-09-21 21:44:33 +08:00
    看来看去正则就这一点。。。。。
    huntzhan
        22
    huntzhan  
       2017-09-21 21:52:07 +08:00
    regex 易学难精,最麻烦的是时间复杂度
    ltux
        23
    ltux  
       2017-09-21 22:02:27 +08:00 via Android
    PHP 那毫无规律的内置函数命名才更难记。
    crab
        24
    crab  
       2017-09-21 22:29:41 +08:00   ❤️ 1
    hzcxdgioa
        25
    hzcxdgioa  
       2017-09-21 23:15:56 +08:00 via Android
    用着用着就熟悉了
    Jiavan
        26
    Jiavan  
       2017-09-22 00:01:43 +08:00 via Android
    推荐你一本书 正则表达式行知必会 100 页覆盖了绝大部分日常使用需求
    shiji
        27
    shiji  
       2017-09-22 06:07:26 +08:00
    为什么要背?这又不是课文。
    把像 24 楼这样的打印下来,需要用的时候查不就行了吗。。。

    [特殊构造] 的那一部分, 可以选择不学(我反正用的很不熟练)。 就是 XX 断言 这一部分
    因为这个部分的支持性不一,有不少语言里面的正则都不支持这一部分。
    zgx030030
        28
    zgx030030  
       2017-09-22 08:23:30 +08:00 via iPhone
    读了两遍《精通正则表达式》感觉还不错,你入门就先记一下那几个元字符就好了。
    dsg001
        29
    dsg001  
       2017-09-22 08:25:41 +08:00
    特殊构造 用的不多,一直记不住,其他还好,很少用比较复杂的正则
    yongSir
        30
    yongSir  
       2017-09-22 08:46:39 +08:00
    给楼主一个建议
    其实正则这种东西学起来简单,关键是需要练

    我的方法很简单很便利只是多数人没想到罢了

    那就是利用任意编译器的查找 /替换功能,比如 Atom/VSCode 等等

    查找 /替换 往往都可以用正则匹配
    这样就有大量的练习机会了

    比如
    将一系列的地名
    利用正则 + 查找替换变成 JSON

    找一些这样的使用机会
    熟悉了就好了

    楼主加油
    hasbug
        31
    hasbug  
       2017-09-22 08:52:39 +08:00
    看过就忘 老菜鸟前端 基本靠搜索。。。
    Shura
        32
    Shura  
       2017-09-22 08:59:37 +08:00 via Android
    常用的不用背,用着用着就熟悉了。不常用的你背它作甚?
    msputup
        33
    msputup  
       2017-09-22 09:02:51 +08:00
    楼主可以用正则算算这个。
    “ 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-4*3)/ (16-3*2) )”
    sansansan333
        34
    sansansan333  
       2017-09-22 09:33:06 +08:00
    https://regexper.com/#%5Cd%7B3%7D

    我都是靠这个试出来为止 错了就改改。
    RubyJack
        35
    RubyJack  
       2017-09-22 09:34:43 +08:00
    @sansansan333 +1 面向调试编程
    kokutou
        36
    kokutou  
       2017-09-22 09:35:19 +08:00
    https://regexr.com/

    左边有个 Cheatsheet

    就够用了。
    zix
        37
    zix  
       2017-09-22 09:47:21 +08:00
    http://regexper.com/ 正则表达式可视化
    cnanyi
        38
    cnanyi  
       2017-09-22 09:47:50 +08:00
    多写多用就会了, 曾经以一条 200 字符的正则为核心做过一个工具软件, 功能是将抓取的网文自动分段整理
    orange666
        39
    orange666  
       2017-09-22 09:51:45 +08:00
    记一些常用的,其他的用着查着,用多了 就记住了
    cjyang1128
        40
    cjyang1128  
       2017-09-22 09:58:41 +08:00   ❤️ 1
    前面的都是认真的吗,,这么明显推广自己博客看不出来吗。。
    haozes
        41
    haozes  
       2017-09-22 10:17:48 +08:00   ❤️ 1
    如果用 windows,win 下面有个叫 regexbuddy,超好用。不用记太多
    pyengwoei
        42
    pyengwoei  
       2017-09-22 11:04:20 +08:00
    @crab 这个图片在哪里看的啊
    coooooooode
        43
    coooooooode  
       2017-09-22 11:49:54 +08:00
    我写多了之后感觉还挺简单的。
    RorschachZZZ
        44
    RorschachZZZ  
       2017-09-22 12:44:01 +08:00
    学-》忘-》学-》忘。。。
    annielong
        45
    annielong  
       2017-09-22 12:50:14 +08:00
    学了忘,忘了学,现在只能先收集用过正则,然后再有类似场景的时候找出来改
    fox0001
        46
    fox0001  
       2017-09-22 13:02:02 +08:00
    我觉得最大的问题是,不同地方的实现不一致,总是有那么细小的差别
    zhx1991
        47
    zhx1991  
       2017-09-22 14:12:07 +08:00
    记住几个简单的

    剩下的现查
    jason19659
        48
    jason19659  
       2017-09-22 14:12:34 +08:00
    现查
    HuangLibo
        49
    HuangLibo  
       2017-09-22 14:29:06 +08:00
    @xray887 硅头?
    bkqzjr
        50
    bkqzjr  
       2017-09-22 17:43:06 +08:00 via Android
    百度百科够我用了
    meepo3927
        51
    meepo3927  
       2017-09-22 17:44:35 +08:00
    上面的头还是下面的头?
    zzczzc
        52
    zzczzc  
       2017-09-22 20:03:20 +08:00
    每次要用的时候回去看下笔记就好了
    Wicked
        53
    Wicked  
       2017-09-23 11:28:25 +08:00 via iPhone
    每次用都要现查文档…
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   1188 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 52ms · UTC 21:34 · PVG 05:34 · LAX 13:34 · JFK 16:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.