首先明确一下什么是匹配
匹配可以从两个方面来理解 【程序编程相关:DELL 220s盘阵在HA应用中如何配】 【推荐阅读:RPM卸载软件完全手册】1 一个正则表达式与一个字符串是否匹配 【扩展信息:Linux下mono配置】 在perl中 =~ 代表捆绑 也就是让正则表达式去匹配指定的字符串 如果如果用匹配的符号形式来表现 对于 /regular/ =~ "string" 如果返回值为真 则说/regular/ 匹配了"string" 2 一个正则表达式不只可以匹配一个字符串 例如 /a*b/ 不仅可以匹配aaaab 还可以匹配aaaaaab b 等 这里所谓的“匹配”也是指 /a*b/ =~ aaaab /a*b/ =~ b 返回值都是真 下面说说依次匹配 首先的一个问题是一个正则表达式的工作过程 举个例子 代码:$data is 192.168.0.1 $data =~ /([0-9]*\.)([0-9]*.)([0-9]*\.)([0-9])/; is 192. is 168. is 0. is 1 这里 /([0-9]*\.)([0-9]*\.)([0-9]*\.)([0-9])/ 匹配了192.168.0.1 同时在这个较长的正则表达式子是由几个短的正则表达式组成的,这些短的在()中的正则表达式称为模式,大家对,,,的值的输出都非常理解 下面再举一个例子 代码:$data =~ /([0-9]*\.)([0-9]*\.)*([0-9])/; is 192. is 0. is 1 这里有观点解释到这里([0-9]*\.) ([0-9]*\.) *([0-9]) 红色部分"依次匹配" 了168. 0. 所以是0. ... 下一页