摘要: 正则表达式是程序员的必备技能,想不想多学几招呢?
本文用JavaScript的exec方法来测试正则表达式。
例如,正则表达式 /F.*g/会匹配“以F开头,以g结尾的字符串”,因此可以匹配"Hello, Fundebug!"中的 Fundebug ,exec方法会返回一个数组,其第一个元素为所匹配的子字符串。
/F.*g/.exec("Hello, Fundebug!")[0]
// 'Fundebug'
非贪婪匹配
默认情况下,正则表达式的量词*、+、?、{},都是进行贪婪匹配,即匹配尽可能多的字符。
例如,正则表达式/.+\s/匹配的是“以空格符结尾的字符串”,我们用它来匹配苹果公司创始人乔布斯在斯坦福大学演讲的名言“You time is limited, so don’t waste it living someone else’s life.”:
/.+\s/.exec("You time is limited, so don’t waste it living someone else’s life.")[0]
// 'You time is limited, so don’t waste it livin