我们经常会碰以要获取一个字符串指定部份的内容,下面我们用正则匹配来获取下一页的url怎么样,代码如下:
- $str = 'ht
- <td align=right>
- <a href=http:
- ';
- preg_match_all('/<a[^>]*href=([^>]*)>下一页</a>/is', $str, $matches);
- print_r($matches[1]);
-
-
- preg_match('/<a href=(.*)[/s]*>下一页</a>/u', $s, $arr);
正则表达式到底是什么东西?
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具,换句话说,正则表达式就是记录文本规则的代码.
很可能你使用过windows/dos下用于文件查找的通配符(wildcard),也就是*和?,如果你想查找某个目录下的所有的word文档的话,你会搜索*.doc,在这里,*会被解释成任意的字符串,和通配符类似,正则表达式也是用来进行文本匹配的工具,只不过比起通配符,它能更精确地描述你的需求——当然,代价就是更复杂——比如你可以编写一个正则表达式,用来查找所有以0开头,后面跟着2-3个数字,然后是一个连字号"-",最后是7或8位数字的字符串(像010-12345678或0376-7654321). |