1. 程式人生 > >php 中文分詞使用

php 中文分詞使用

1. 取得 scws-1.2.3 的程式碼

wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2


2. 解開壓縮包
[[email protected] ~]$ tar xvjf scws-1.2.3.tar.bz2


3. 進入目錄執行配置指令碼和編譯
[[email protected] ~]$ cd scws-1.2.3
[[email protected] ~/scws-1.2.3]$ ./configure --prefix=/usr/local/scws && make && make install


注:這裡和通用的 GNU 軟體安裝方式一樣,具體選項引數執行 ./configure --help 檢視。
常用選項為:--prefix=<scws的安裝目錄>


4. 順利的話已經編譯並安裝成功到 /usr/local/scws 中了,執行下面命令看看檔案是否存在
[[email protected] ~/scws-1.2.3]$ ls -al /usr/local/scws/lib/libscws.la


5. 試試執行 scws-cli 檔案
[[email protected] ~/scws-1.2.3]$ /usr/local/scws/bin/scws -h
scws (scws-cli/1.2.3)
Simple Chinese Word Segmentation - Command line usage.
Copyright (C)2007 by hightman.


6 用 wget 下載並解壓詞典,或從主頁下載然後自行解壓再將 *.xdb 放入 /usr/local/scws/etc 目錄中
[[email protected] ~/scws-1.2.3]$ cd /usr/local/scws/etc
[[email protected] /usr/local/scws/etc]$ wget http://www.xunsearch.com/scws/down/scws-dict-chs-gbk.tar.bz2
[[email protected] /usr/local/scws/etc]$ wget http://www.xunsearch.com/scws/down/scws-dict-chs-utf8.tar.bz2
[
[email protected]
/usr/local/scws/etc]$ tar xvjf scws-dict-chs-gbk.tar.bz2 [[email protected] /usr/local/scws/etc]$ tar xvjf scws-dict-chs-utf8.tar.bz2


7.8.9. 這三步是用C程式測試 直接跳過 我們要做的是php測試


10. 在 php 中呼叫分詞,安裝 php 擴充套件。

    假設您已經將 scws 按上述步驟安裝到 /usr/local/scws 中。
    安裝此擴充套件要求您的 php 和系統環境安裝了相應的 autoconf automake 工具及 phpize 。


    1) 進入原始碼目錄的 phpext/ 目錄 ( cd ~/scws-1.2.3 )
    這裡出現
    -bash: /usr/local/src/php-5.6.3/scripts/phpize: Permission denied
    解決辦法:
    
    $ cd ~/scws-1.2.3/phpext/
    $ locate phpize


    2) 執行 phpize (在PHP安裝目錄的bin/目錄下)
    
$ /usr/local/php/bin/phpize

    
    3) 執行 ./configure --with-scws=/usr/local/scws 
       若 php 安裝在特殊目錄 $php_prefix, 則請在 configure 後加上 --with-php-config=$php_prefix/bin/php-config
       編譯出現錯誤
       configure: error: Cannot find php-config. Please use --with-php-config=PATH
       解決辦法:
   下面第一條命令 查詢php-config 目錄位置    
 $ locate php-config
 $ ./configure --with-php-config=/usr/local/php/bin/php-config --with-scws=/usr/local/scws


    4) 執行 make 然後用 root 身份執行 make install     

   # make && make install


    安裝成功後 擴充套件共享目錄:/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/

    5) 在 php.ini 中加入以下幾行
    我的地址:/usr/local/php/etc/php.ini

[scws]
;
; 注意請檢查 php.ini 中的 extension_dir 的設定值是否正確, 否則請將 extension_dir 設為空,
; 再把 extension = scws.so 指定絕對路徑。
;
extension = scws.so
scws.default.charset = utf8
scws.default.fpath = /usr/local/scws/etc


    6) 命令列下執行 php -m 就能看到 scws 了或者在 phpinfo() 中看看關於 scws 的部分,記得要重啟 web 伺服器
       才能使新的 php.ini 生效。
    注意 可能有的php 客戶端版本比較低, 使用 php -m 顯示的是客戶端的版本 並不是實際安裝的版本
    那麼可以通過 程式中的 phpinfo() 在瀏覽器上訪問檢視
    重啟指令碼如下
    $ service php-fpm restart
    $ service nginx restart


    7) 這樣就算安裝完成了,餘下的工作只是PHP程式碼編寫問題了。
       關於 PHP 擴充套件的使用說明請參看程式碼中 phpext/README.md 檔案或其它文件章節。
$ cat README.md  #獲取函式使用說明

下面 寫一個常用的 去重的分詞結果:

<?php
$so = scws_new();
$so->set_charset('utf8');
// 這裡沒有呼叫 set_dict 和 set_rule 系統會自動試呼叫 ini 中指定路徑下的詞典和規則檔案
$so->send_text("我是一箇中國人,我會C++語言,我也有很多T恤衣服");

$words = array();
while ($tmp = $so->get_result())
{
    foreach ($tmp as $val) {
    	if(!new_in_array($val, $words,'word')){
            $words[] = array(
	    	    'word' => $val['word'],
	    	    'weight' => $val['idf'],
	    	);
    	}
    }
}


print_r($words);
$so->close();

function new_in_array($need,$array,$column=''){
	$flag = false;
	foreach ($array as $val) {
		if($val[$column] == $need[$column]){
			$flag = true;
			break;
		}
	}
	return $flag;
}


?>


相關推薦

PHP中文擴展 SCWS

.com lin white 案例 文件 down 運用 包含 div 1、scws簡單介紹 SCWS 是 Simple Chinese Word Segmentation 的首字母縮寫(即:簡易中文分詞系統)。 這是一套基於詞頻詞典的機械式中文分詞引擎,它能將一整段的

php+中文scws+sphinx+mysql打造千萬級數據全文搜索

libc 海量 modules shell pub redis集群 register 處理 onf Sphinx是由俄羅斯人Andrew Aksyonoff開發的一個全文檢索引擎。意圖為其他應用提供高速、低空間占用、高結果 相關度的全文搜索功能。Sphinx可以非常容易的與

php 中文 全文搜尋引擎 xunsearch 例項

xunsearch 安裝 下載 解壓 安裝 安裝成功 配置資訊 設計表 做測試資料 配置檔案 建立索引 測試索引 xunsearch 安裝 下載 cd ~/downl

php 中文使用

1. 取得 scws-1.2.3 的程式碼 wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2 2. 解開壓縮包[[email protected] ~]$ tar xvjf scws-1.2.

Ubuntu16.04下安裝elasticsearch+kibana實現php客戶端的中文

lba 實例 exc common adding creat 啟動服務 uid dbms 1.下載安裝elasticsearch和kibana wget https://artifacts.elastic.co/downloads/elasticsearch/elasti

SCWS中文PHP擴展詳細安裝說明

server 文檔 .so 小姐 lang down http 寶塔面板 代碼 因最近寫的一段代碼,需要用到中文分詞,在網上找了一下,發現了scws這個不錯的插件,故根據文檔安裝使用,下面記錄下安裝的全過程 系統:centos 安裝scws wget http://www.

scws中文PHP

Linux下安裝scws和安裝PHP的scws擴充套件 wget http://www.xunsearch.com/scws/down/scws-1.2.3.tar.bz2tar xvjf scws-1.2.3.tar.bz2cd scws-1.2.3/./configure --prefix=/usr/l

python 讀寫txt文件並用jieba庫進行中文

mage 亂碼 技術分享 流行 ictclas 函數 結果 class 配置 python用來批量處理一些數據的第一步吧。 對於我這樣的的萌新。這是第一步。 #encoding=utf-8 file=‘test.txt‘ fn=open(file,"r") print f

.NET Core中文組件jieba.NET Core

搜索引擎特點支持三種分詞模式:精確模式,試圖將句子最精確地切開,適合文本分析;全模式,把句子中所有的可以成詞的詞語都掃描出來, 速度非常快,但是不能解決歧義。具體來說,分詞過程不會借助於詞頻查找最大概率路徑,亦不會使用HMM;搜索引擎模式,在精確模式的基礎上,對長詞再次切分,提高召回率,適合用於搜索引擎分詞。

Centos下Sphinx中文編譯安裝測試---CoreSeek

orm 創建索引 auxiliary aclocal memcache acl inux mage arch 要支持中文分詞,還需要下載Coreseek,可以去官方搜索下載,這裏我用的4.1 百度雲下載地址: https://pan.baidu.com/s/1sl

es5.4安裝head、ik中文插件

es安裝maven打包工具wget http://mirror.bit.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz tar -xf apache-maven-3.3.9-bin.tar.gz mv apach

中文中的戰鬥機

raw 自帶 參考文獻 英文 概念 手動 實現 大學 sco 英文分詞的第三方庫NLTK不錯,中文分詞工具也有很多(盤古分詞、Yaha分詞、Jieba分詞等)。但是從加載自定義字典、多線程、自動匹配新詞等方面來看。大jieba確實是中文分詞中的戰鬥機。 請隨意觀看表演

11款開放中文引擎大比拼

是否 人的 tro 例子 googl 進行 北大 art play 在逐漸步入DT(Data Technology)時代的今天,自然語義分析技術越發不可或缺。對於我們每天打交道的中文來說,並沒有類似英文空格的邊界標誌。而理解句子所包括的詞語,則是理解漢語語句的第一步。

中文--逆向最大匹配

res 最長 java 搜索字符串 name ++ san imp 匹配 上一篇文章中介紹了正向最大匹配。能夠看到有時候效果不是非常好。這裏在介紹一種逆向最大匹配的算法。詞典和匹配的字符串都和上一篇文章同樣 僅僅是本算法是從後到前搜索字符串。然後找到最長的

elasticsearch中文+全文搜索

分詞器 。。 中文 search img 版本 下載地址 源碼包 -i 安裝ik中文分詞器 我在百度上搜索了下,大多介紹的都是用maven打包下載下來的源碼,這種方法也行,但是不夠方便,為什麽這麽說? 首先需要安裝maven吧?其次需要下載源碼吧?最後需要打包吧? 我

Sphinx + Coreseek 實現中文搜索

addclass trac 無法連接到 繼續 記錄 warning php接口 整數 href Sphinx + Coreseek 實現中文分詞搜索 Sphinx Coreseek 實現中文分詞搜索 全文檢索 1 全文檢索 vs 數據庫 2

Solr6.6.0添加IK中文

其中 開發 其余 下載鏈接 classes 項目 實現 .com 擴展 IK分詞器就是一款中國人開發的,擴展性很好的中文分詞器,它支持擴展詞庫,可以自己定制分詞項,這對中文分詞無疑是友好的。 jar包下載鏈接:http://pan.baidu.com/s/1o85I15o

搭建ELASTICSEARCH實現中文搜索功能

area 普通 ron too alt 下載 bootstrap arch osi 安裝ELASTICSERARCH yum install bzip2 automake libtool gcc-c++ java-1.8.0-openjdk -y mkdir -p /h

PyNLPIR python中文工具

命名 hub 兩個 工具 ict mage ret wid tty 官網:https://pynlpir.readthedocs.io/en/latest/ github:https://github.com/tsroten/pynlpir NLPIR分詞系

(五)Lucene——中文

實現 ext cse ron -a tag 大小 -c .com 1. 什麽是中文分詞器 對於英文,是安裝空格、標點符號進行分詞 對於中文,應該安裝具體的詞來分,中文分詞就是將詞,切分成一個個有意義的詞。 比如:“我的中國人”,分詞:我、的、中