Php Chinese word segmentation function code example
| I would like to introduce you to a function for Chinese word segmentation in php, which may be used in some cases. if you have any need, please refer to it. The code is as follows:
TRUE, 'segment _ english '=> FALSE); var $ dict_name = 'unknown'; var $ dict_words = array (); function setLowercase ($ value) {if ($ value) {$ this-> options ['lowercase'] = TRUE;} else {$ this-> options ['lowercase'] = FALSE;} return TRUE ;} function setSegmentEnglish ($ value) {if ($ value) {$ this-> options ['segment _ english '] = TRUE ;} else {$ this-> options ['segment _ english '] = FALSE;} return TRUE;} function load ($ dict_file) {If (! File_exists ($ dict_file) {return FALSE;} $ fp = fopen ($ dict_file, 'r'); $ temp = fgets ($ fp, 1024 ); if ($ temp = FALSE) {return FALSE;} else {if (strpos ($ temp, "t ")! = FALSE) {list ($ dict_type, $ dict_name) = explode ("t", trim ($ temp);} else {$ dict_type = trim ($ temp ); $ dict_name = 'unknown ';} $ this-> dict_name = $ dict_name; if ($ dict_type! = 'Dict _ WORD_W ') {return FALSE ;}} while (! Feof ($ fp) {$ this-> dict_words [rtrim (fgets ($ fp, 32)] = 1 ;}fclose ($ fp); return TRUE ;} function getDictName () {return $ this-> dict_name;} function segmentString ($ str) {if (count ($ this-> dict_words) == 0) {return FALSE ;} $ lines = explode ("n", $ str); return $ this-> _ segmentLines ($ lines);} function segmentFile ($ filename) {if (count ($ this-> dict_words) = 0) {return FALSE;} $ lines = file ($ filename); return $ this-> _ SegmentLines ($ lines);} function _ segmentLines ($ lines) {$ contents_segmented = ''; foreach ($ lines as $ line) {$ contents_segmented. = $ this-> _ segmentLine (rtrim ($ line )). "n" ;}do {$ contents_segmented = str_replace ('','', $ contents_segmented);} while (strpos ($ contents_segmented ,'')! = FALSE); return $ contents_segmented;?> |