恩.我懒得打字说明凯哥的那个"$pattern='/^(https?|ftps?):\/\/([a-zA-Z0-9-]+\.){1,5}
(com|cn|net|org|edu|vc|la|gov|us|eu|cc|cm|hk|tw|tk)\/?(\/?index.php)?
(\??(\w+=\S+&?)+)?/';"正
则表达式有什么不足.
你去测试就知道哪里不太好.
我拿我代码说话:
-
-
-
- function dump($array){
- echo '
';
- print_r($array);
- echo '';
- }
- $data=$_GET['data'];
- $sub=$_GET['sub'];
- if(isset($sub)){
- //这个正则稍微改了下凯哥的代码.我的核心匹配辅助条件按是第二层if...else开始的代码.
- $pat='/^((http|https|ftp|ftps):\/\/)?([a-zA-Z0-9-]+\.){1,5}(com|cn|net|org|hk|tw)(\/(\w|-)+\.([a-zA-Z]+))(\??(\w+=\S+&?)+)?$/';
- if(preg_match($pat,$data,$gaga)==0){
- $pat1='/^((http|https|ftp|ftps):\/\/)?([a-zA-Z0-9-]+\.){1,5}(com|cn|net|org|hk|tw)$/';
- if(preg_match($pat1,$data,$gaga1)){
- echo '"'.$data.'" 与 "'.$pat.'" 匹配成功';
- echo '
结果:';
- dump($gaga1);
- }else{
- echo ''.$data.'与'.$pat1.'匹配失败';
- echo '
结果:';
- dump($gaga1);
- }
- }elseif(preg_match($pat,$data,$gaga)){
- echo '"'.$data.'" 与 "'.$pat.'" 匹配成功';
- echo '
结果:';
- dump($gaga);
- }
- }
- ?>
你要是略看的这段代码.那么我就不用解释了.你要是认真看的,我更不用解释.大家都懂的.本代码还有些不足的.欢迎改进
声明:我仅仅是共享思维.说我炫耀的人!打断他的腿!此代码段,和杨森讨论了下并写了出来....................
原文地址:
阅读(271) | 评论(0) | 转发(0) |