2008-4
14
理智地、负责任地、透明地推广Firefox

"正则表达式"在程序开发中扮演着非常重要的角色。随着ActionScript3开始支持正则表达式,越来越多的(之前没有接触过正则表达式开发的)Flash程序员开始感到棘手。我个人认为,正则表达式的确不是一个简单的概念。要想掌握正则表达式,光看文字教程是不够的。当然,指望有一个"高手"手把手的给你比划,恐怕也很少有人有这样的条件。这里我推荐我在学习正则表达式过程中所用到的两个辅助资源,我认为比许多文字教程要易懂得多:

  1. Visibone的正则表达式图表
    Visibone上有很多以图形表示的技术概念,其中以正则表达式的图形表现最受欢迎(地址)。它让人容易理解的最大优势就是每一个正则表达式都列举了相应的范例,并以浅色背景标注,例如:

    可以看到,右侧的assert中都有对应的范例。注意,浅黄色背景表示assert的内容为true断言;浅灰色为false断言(看看浅色前面都有一个"!")。例如最后一排的:

    assert(!/to{1,2}t/.test("tooot"));

    表示在"t"和"t"之间o的字符重复次数不在1-2之间(3个)
    而倒数第二排的:

    assert(/to{1,2}t/.test("toot"));

    则表示在"t"和"t"之间o的字符重复次数为1-2个(2个);
    这里,assert表示"断定",它并不是JavaScript或者ActionScript的指令,只是为了便于理解(assert在英文中为"断言"的意思)
    要特别感谢白云黄鹤的beta同学给我提供这个visibone的好资源:)

  2. Firefox的RegularExpression插件
    使用方法非常简单:
    首先,在这里安装该插件;
    然后,在Toot菜单中可以看到入口:

    然后,按照我这张截图来使用即可(写的很明白了,不用具体解释了吧?):

    (作用是将我原来LBS的链接替换为新的链接格式)

其实,正则表达式还是很容易出错的,因此这款Tester插件真的可以帮助我们省去很多调试的麻烦。(我想真正能不用tester写出一些复杂的正则表达式,而不出一个差错的人恐怕也不多)。

补充:网友Dofy也制作了一个基于AIRRegExp Tester,对于没有Firefox的朋友可以拿来一试:)

遗憾的是,我也没有在大学课程中系统学习过正则表达式,文中如有疏漏,请不吝赐教。

: http://www.awflasher.com/blog/archives/1244

哇!跟我一样,您也是一名Firefox用户,这些话题您可能感兴趣:

RSS feed

才 12 条评论 ( 展开所有评论 | 收起所有评论 ) 立刻发表评论 »

创亿无限
2008-04-14 12:07:53

呵呵 别的语言早有了

aw
2008-04-14 12:54:49

语言、功能都是围绕着应用的。说的难听点,有市场有利益才有人去做;说的好听点,满足人类的需求:)

venusguo
2008-04-14 13:02:54

这俩东西不错啊!

colder
2008-04-14 13:42:05

那些卡片确实蛮漂亮

对于我这种整日翻看淡蓝MSDN和黑白PDF的人来说
真的是眼前一亮

Leo
2008-04-14 13:50:06

貌似我上一条评论被过滤了……
-_-b

autoxbc
2008-04-14 14:26:02

第一个卡片,Linux 对应的程序 kregexpeditor,效果更炫。

第二个扩展,EmEditor 或者 VIM 实现的更完整。

示例的正则,{0,1}用 ? 更简洁,"."用 "\."匹配更精确。

北极冰仔
2008-04-14 15:06:54

正则表达式用起来很简单,只是很久不用就得想一想。

aileenguan
2008-04-14 22:35:47

yes

tony
2008-05-13 03:47:40

允许你这个说法~~~~~~

troy
2008-04-14 15:30:17

一直在用,不过都是比较简单的

omiga
2008-04-15 13:38:00

精通正则非一日之功~···

TZ
2008-04-17 17:32:49

dofy的那个确实不错.
还有一个也挺不错的:
http://gskinner.com/RegExr/