「すべての漢字を取り出す正規表現」をPHPで試す
2005年11月07日-
スポンサード リンク
すべての漢字を取り出す正規表現を参考にPHPでトークンを切り出すサンプルを作成しました。
powered by PHPコード変換機
出力結果:
mb_ereg部分をいじることで漢字のみ、カタカナのみという切り出しかたが可能になります。
<?php
// スクリプトはUTF-8で記述されています
$str = <<<EOM
ようこそphpspotへ!当サイトではフリーのwindows用php開発環境であるPHPエディタ forWin や、フリーのPHPスクリプト( PHP掲示板,webshot,webimager,CMS 等 )、PHPツールバー、テレビバー、便利検索バー(Yahoo,Google,辞典検索)などを配布しています。その他、PHP入門 や PHP5ーTIPS、PHPサンプル集、MySQL解説、PHPレンタルサーバー特集などのコーナーもあります。
EOM;
mb_internal_encoding("UTF-8");
mb_regex_encoding("UTF-8");
$token = array();
// すべてのト-クン切り出し
while(1){
$bytes = mb_ereg("[一-龠]+|[ぁ-ん]+|[ァ-ヴー]+|[a-zA-Z0-9]+|[a-zA-Z0-9]+", $str, $match);
if ($bytes == FALSE) {
break;
} else {
$match = $match[0];
array_push($token, $match);
}
$pos = strpos($str, $match);
$str = substr($str, $pos+$bytes);
}
print_r($token);
?>
powered by PHPコード変換機
出力結果:
Array
(
[0] => ようこそ
[1] => phpspot
[2] => へ
[3] => 当
[4] => サイト
[5] => では
[6] => フリー
[7] => の
[8] => windows
[9] => 用
[10] => php
[11] => 開発環境
[12] => である
[13] => PHP
[14] => エディタ
[15] => forWin
[16] => や
[17] => フリー
[18] => の
[19] => PHP
[20] => スクリプト
[21] => PHP
[22] => 掲示板
[23] => webshot
[24] => webimager
[25] => CMS
[26] => 等
[27] => PHP
[28] => ツールバー
[29] => テレビバー
[30] => 便利検索
[31] => バー
[32] => Yahoo
[33] => Google
[34] => 辞典検索
[35] => などを
[36] => 配布
[37] => しています
[38] => その
[39] => 他
[40] => PHP
[41] => 入門
[42] => や
[43] => PHP5
[44] => TIPS
[45] => PHP
[46] => サンプル
[47] => 集
[48] => MySQL
[49] => 解説
[50] => PHP
[51] => レンタルサーバー
[52] => 特集
[53] => などの
[54] => コーナー
[55] => もあります
)
このように簡易形態素解析機が出来ました。mb_ereg部分をいじることで漢字のみ、カタカナのみという切り出しかたが可能になります。
スポンサード リンク
Advertisements
SITE PROFILE
最新のブログ記事(新着順)
- AIでフォーム生成できる「Formcn AI」
- ウェブサイトの CSS を解析してくれる「Online CSS Code Quality Analyzer」
- 英文を文鳥に変換するフォント「ぎゅうぎゅう文鳥」
- Tiktok公式のフリーフォント「TikTok Sans」
- React+Tailwindなサイトで使えるUIライブラリ「SmoothUI」
- 15000以上のいい感じの線形アイコン「Lineicons」
- CSSやTailwindでのCSSスニペットライブラリ「CSS Snippets Library」
- AIを使ってサイトマップが作れる「Octopus.do」
- ライブラリ依存のないモーダルオープンライブラリ「Blendy」
- 個性的な明朝フリーフォント「築豊初号明朝OFL」
- 過去のエントリ



















間違いの指摘をしていただける方はメール、あるいはTwitter/FBでお願いします(クリック)


