⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test.php

📁 好不容易找到的一个php分词程序
💻 PHP
字号:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>PHP无组件分词-83774725@QQ.com</title>
</head>

<body>
<p align="center"><h3>程序:PHP无组件分词</h3></p>
<p align="center"><h3>作者:83774725@QQ.com</h3></p>

<?php
if($_POST['action']){
	require("HJ_SegWord_Class.php");
	$starttime = ExecTime();
	$HJ_SegWord = new HJ_Segword_Class();
	$totaltime =ExecTime()-$starttime ;
	echo "载入字典时间: $totaltime 秒<br><br><HR>";

	switch ($_POST['action']){
		case "seg":
			if($_POST['SegWord']!=''){
				$str=$_POST['SegWord'];
				echo "{$str}<HR><h3>中文分词正向最大匹配算法</h3>";
				$starttime = ExecTime();
				print_r( $HJ_SegWord->Seg_Word_MM($str));
				$totaltime =ExecTime()-$starttime ;
				echo "<BR><BR><BR>分词时间: $totaltime 秒<br><br>";

				echo "<HR><h3>中文分词正向最小匹配算法</h3>";
				$starttime = ExecTime();
				print_r( $HJ_SegWord->Seg_Word_NM($str));
				$totaltime =ExecTime()-$starttime ;
				echo "<BR><BR><BR>分词时间: $totaltime 秒<br><br>";

				$HJ_SegWord->Clear();
			}
			break;
		case "isword":
			if($word=$_POST['txtIsWord']){
				if($HJ_SegWord->IsWord($_POST['txtIsWord'])){
					echo "<b><font color=red>{$_POST['txtIsWord']}</font></b>是正确的中文组词";
				}else{
					echo "<b><font color=red>{$_POST['txtIsWord']}</font></b>不是一个正确的中文组词";
				}
			}
			break;

		case "new":
			if(method_exists($HJ_SegWord,'add_word')){
				if($word=$_POST['txtAddWord']){
					$HJ_SegWord->add_word($_POST['txtAddWord']);
					echo "添加<b><font color=red>{$_POST['txtAddWord']}</font></b>成功";
				}
			}else{
				echo "<font color=red>免费版不支持增加新词功能,商业合作请与作者联系:<b>83774725@QQ.com</b></font>";
			}
			break;
		case "clear":
			if(method_exists($HJ_SegWord,'clear_word')){
				if($word=$_POST['txtClearWord']){
					if($HJ_SegWord->clear_word($_POST['txtClearWord']))
					echo "删除<b><font color=red>{$_POST['txtClearWord']}</font></b>成功";
					else
					echo "删除<b><font color=red>{$_POST['txtClearWord']}</font></b>失败";
				}
			}else{
				echo "<font color=red>免费版不支持删词功能,商业合作请与作者联系:<b>83774725@QQ.com</b></font>";
			}
			break;

	}


}
function ExecTime(){
	$time = explode(" ", microtime());
	$usec = (double)$time[0];
	$sec = (double)$time[1];
	return $sec + $usec;
}
?>
<form id="form1" name="form1" method="post" action="">
   <p>请在下面文本框输入待分词文本后然后按分词按钮
     <br />
     <textarea name="SegWord" cols="80" rows="12">PHP无组件中文分词
版本V1.0.0 
Author:hj<83774725@QQ.com>
说明:本技术用于搜索引擎中文分词
程序使用自建词库,存储15多万(免费版10万左右)词,未压缩词库仅1.13M
程序自动过滤了诸如:这█♀样的♂字卍※符
平均每个词查找词库次数为2
使用分词类中的add_word方法可以很轻易扩展词库,稍加扩展可使程序具有学习功能
程序未对RMM和MM分词进行结果组合与筛选
本词库由HJ使用整理,作者保留一切权利,未经许可,不得用于商业用途
使用举例:

$word="PHP无组件中文分词";
require("HJ_SegWord_Class.php");
$HJ_SegWord = new HJ_Segword_Class();
print_r( $HJ_SegWord->Seg_Word_MM($word));//正向算法
print_r( $HJ_SegWord->Seg_Word_RMM($word));//逆向算法
</textarea>
     <br />
     <br />
     <br />
     <label>
                   
     <input type="submit" name="Submit" value="分词" onclick="document.getElementById('action').value='seg'" />
     </label>
     <br />
     <br />
     <br />
     <label>
	 <input type="hidden" name="action" id="action" value="seg" />
     判断是否为中文组词
     <input type="text" name="txtIsWord" value="<?php echo $word ;?>"/>
     </label>
     <input type="submit" name="Submit2" value="判断"  onclick="document.getElementById('action').value='isword'" />
  </p>
   <p>
     <label>增加新词
     <input type="text" name="txtAddWord" value="<?php echo $word ;?>"/>
     </label>
     <input type="submit" name="Submit22" value="增加" onclick="document.getElementById('action').value='new'"  />
</p>
   <p>
     <label>删除组词
     <input type="text" name="txtClearWord" value="<?php echo $word ;?>" />
     </label>
     <input type="submit" name="Submit22" value="删除" onclick="document.getElementById('action').value='clear'"  />
  </p>

</form>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -