<?
#####从页码源代码中获得资料的类########
#####用法:先用取目录函数one_dir()或two_dir, 然后在分别用url_items(),get_items(),res_items()函数,
#####最后用写入数据库函数mysql()函数#####
class match
{
var $array_preg;//preg的匹配数组
var $array_ereg;//ereg的匹配数组
var $array_add;//偏移量的数组
var $array_sign;//标记数组;例如<table>(.*)</table>;如果$array_sign[0]=1代表取两者之间,如果为0代表两者都取;
var $dir;
function url_items($array_dir,$front)//取每个文件下的需要的资料(网址)集合(数组)
{
$k=0;
for($j=0;$j<count($array_dir);$j++)
{
$url_file=file($array_dir[$j]);
for($i=0;$i<count($url_file);$i++)
{
if(preg_match($this->array_preg[0],$url_file[$i]))
{
eregi($this->array_ereg[0],$url_file[$i+$this->array_add[0]],$head);
$array_url[$k++]=$front.$head[$this->array_sign[0]];
}
}
}
return $array_url;
}
function get_items($array_url)//取网址集合下的每个网址所对应的FILE文件
{
$k=0;
for($i=0;$i<count($array_url);$i++)
{
$array_file[$k++]=file($array_url[$i]);
}
return $array_file;
}
function res_items($array_file)//对每个FILE文件分析,取得想要的资料
{
$k=0;
for($j=0;$j<count($array_file);$j++)
{
for($i=0;$i<count($array_file[$j]);$i++)
{
if(preg_match($this->array_preg[1],$array_file[$j][$i]))
{
eregi($this->array_ereg[1],$array_file[$j][$i+$this->array_add[1]],$head);
$array_res[$k++]=trim($head[$this->array_sign[1]]);
}
}
}
return $array_res;
}
function mysql($server,$user,$pass,$db,$query,$array_res)//把取得的资料,存入数据库中
{
mysql_connect($server,$user,$pass);
mysql_select_db($db);
for($i=0;$i<count($array_res);$i++)
{
$query1=$query."('$array_res[$i]')";
//echo $query1.'<br>';
mysql_query($query1);
}
mysql_close();
}
function dir_one($min,$max,$type)//取目录文件方法一
{
$k=0;
for($i=$min;$i<$max;$i++)
{
$array_dir[$k++]=$this->dir.$i.".".$type;
}
return $array_dir;
}
function dir_two()//取目录文件方法二
{
$k=0;
$handle=opendir($this->dir);
while($file=readdir($handle))
{
if($file!="."&&$file!="..")
{
$array_dir[$k++]=$this->dir.$file;
}
}
closedir($handle);
return $array_dir;
}
}
?>
分享到:
相关推荐
- `GameMatch.php`:这是游戏匹配的核心类,可能包含了房间管理、匹配逻辑和实时通信的实现。 - `Worker.php`:Workerman的工作进程类,定义了服务器的配置和启动方法。 - `config.php`:配置文件,可能包含了数据库...
AC多模式匹配算法 特点:应用有限自动机巧妙地将字符比较转化为了状态转移。此算法有两个特点:一是扫描文本时完全不需要回溯,二是时间复杂度为O(n)与关键字的数目和长度无关,但所需时间和文本长度以及所有关键字...
这个"php本地匹配ip地址类"压缩包提供了一个专为处理和匹配IP地址而设计的PHP类库。该类库可能包含了各种方法,如验证IP地址的有效性、解析IP地址、判断IP是否在特定范围内等功能。 首先,类库的核心是定义一个IP...
在本案例中,我们将讨论如何使用PHP、JavaScript和HTML实现一个简单的模糊匹配功能。这个功能通常用于搜索框,提升用户体验,让用户能够快速找到他们想要的信息,即使他们没有记住确切的关键词。 首先,我们从PHP的...
分类信息系统(CIS)是这类应用的核心部分,它允许用户按照预定义的类别发布和查找信息。例如,分类可以包括房产、求职、二手商品等。用户可以根据需求浏览不同的分类,同时管理员可以管理这些分类,添加、删除或...
在后端的`search.php`中,使用PHPExcel读取Excel数据并查找匹配项,然后返回JSON格式的结果。 4. **优化和注意事项**:在处理大量数据时,要注意内存和性能的问题。可以使用分块读写、缓存策略或优化数据处理逻辑来...
后端web:PHP Android:Java iOS:obje-ct-ctive-C++ 全新原生一对一社交软件 速度匹配 视频匹配语音匹配 即时通信产品 秒匹配 秒接通 独立资料卡页面 画面以及语音即时同步无延迟 动态可发(图片,语音,视频),...
例如Perl、PHP以及GRETA等语言都支持递归匹配。在这些语言中,可以使用特殊符号`(?R)`来表示递归匹配的部分。 ##### 1.3 递归匹配的实现方式 递归匹配可以通过构建一个能够匹配自身或子模式的正则表达式来实现。...
- `Regex` 类:用于正则表达式匹配和处理。 3. **日期和时间**: - `DateTime` 类:处理日期和时间,提供了丰富的API。 - `DateInterval` 和 `DatePeriod` 类:分别用于表示时间间隔和生成时间周期。 4. **文件...
- 通过`pathinfo()`函数可以获取文件的扩展名,类的`checkFileType()`方法会对比上传文件的扩展名与允许的文件类型列表,不匹配则拒绝上传。 7. **文件重命名**: - 为了避免文件名冲突,通常会生成一个唯一的...
PHP 正则表达式匹配汉字、字母、数字、下划线
在PHP中,正则表达式是一种强大的文本处理工具,它能帮助我们匹配、查找、替换或提取特定模式的字符串。当我们需要匹配不包含某些特定关键词的字符串时,我们需要使用否定前瞻(Negative Lookahead)或者否定后瞻...
一对一语音视频直播双端原生+php后台源码 社交交友APP匹配语音视频聊天即时通信源码 这套是没有教程的哈,你们需要的自己研究。 开发语言 后端Web:PHP Android:Java IOS:obje-ct-ctive-C 全新原生一对一社交软件...
比如给出两个字符串:“abc”和“abcx”,那么用这个算法返回值是一。用动态规划的思想实现的,其实网上有很多c/c++实现的,本例是php实现
在IT行业中,自动输入内容匹配是一项重要的技术,它主要应用于各种软件系统,特别是搜索引擎、推荐系统和智能助手等。这项技术的核心目标是提高用户输入效率,提供精准的预测和建议,减少用户手动输入的工作量,提升...
在PHP编程中,正则表达式(Regular Expression)是一种强大的文本处理工具,广泛用于字符串匹配、查找、替换和验证等任务。"php常用正则表达式类.zip"这个压缩包文件提供了一个专为PHP设计的正则表达式类库,方便...
在IT行业中,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,用于匹配、查找、替换或提取符合特定模式的字符串。在PHP中,正则表达式被广泛应用于数据验证、文本处理和搜索替换操作。"正则...
- **实现**: 由于提供的代码片段并未展示具体的模糊匹配算法实现,但可以推测,实现这类功能通常会涉及以下几种技术: - **编辑距离**: 计算两个字符串之间的差异程度,用于衡量它们之间的相似度。 - **...
这种方法通常结合栈或队列数据结构,先遍历所有分类,将所有分类放入栈或队列,然后按顺序取出,检查当前分类的父ID是否与已处理的分类ID匹配,如果匹配,则将其子分类添加到已处理分类的子节点。这种方法避免了...