*日本語コーパス構築のための テキスト処理の基礎
~言語処理やプログラミング以前の基礎知識

**2017/06/06 テキストデータと正規表現

***テキストデータ
-[[テキストファイル>https://ja.wikipedia.org/wiki/%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB]]
---[[授業資料/テキストデータとは]]
---拡張子 txt,csv,tsv,htm,xml
---サンプルデータ [[soseki2.zip>https://dl.dropboxusercontent.com/u/134600/soseki2.zip]]
--[[テキストエディタ>https://ja.wikipedia.org/wiki/%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF]]
---[[サクラエディタ>http://www.ogiso.net/wiki/index.php?plugin=attach&pcmd=open&file=sakura2.zip&refer=%A5%C6%A5%AD%A5%B9%A5%C8%BD%E8%CD%FD%A4%CE%B4%F0%C1%C3]]
---[[授業資料/テキストエディタ]]
---論理行番号
---検索,置換,grep,タグジャンプ
---[[ショートカットキー>授業資料/覚えておきたいショートカットキー]]
-[[文字コード>https://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89]]=符号化文字集合
--[[テレタイプ>https://ja.wikipedia.org/wiki/%E3%83%86%E3%83%AC%E3%82%BF%E3%82%A4%E3%83%97%E7%AB%AF%E6%9C%AB]]の話から
---[[制御記号>https://ja.wikipedia.org/wiki/%E5%88%B6%E5%BE%A1%E6%96%87%E5%AD%97]]
---[[改行コード>https://ja.wikipedia.org/wiki/%E6%94%B9%E8%A1%8C%E3%82%B3%E3%83%BC%E3%83%89]] CR, LF, CRLF
--[[文字集合(character set)>https://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E9%9B%86%E5%90%88]]
--[[符号化方式(character encoding)>https://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E7%AC%A6%E5%8F%B7%E5%8C%96%E6%96%B9%E5%BC%8F]]
--やや古いがよく使われる文字コード:[[Shift_JIS>https://ja.wikipedia.org/wiki/Shift_JIS]], [[CP932>https://ja.wikipedia.org/wiki/Microsoft%E3%82%B3%E3%83%BC%E3%83%89%E3%83%9A%E3%83%BC%E3%82%B8932]], [[EUC-JP>https://ja.wikipedia.org/wiki/EUC-JP]]
--[[Unicode>https://ja.wikipedia.org/wiki/Unicode]]の符号化方式[[UTF-8>https://ja.wikipedia.org/wiki/UTF-8]], [[UTF-16>https://ja.wikipedia.org/wiki/UTF-16]] 
---(LE(Little Endian), BE(Big Endian))
---[[BOM(Byte Order Mark)>https://ja.wikipedia.org/wiki/%E3%83%90%E3%82%A4%E3%83%88%E3%82%AA%E3%83%BC%E3%83%80%E3%83%BC%E3%83%9E%E3%83%BC%E3%82%AF]]
---[[BMP(基本多言語面)>https://ja.wikipedia.org/wiki/%E5%9F%BA%E6%9C%AC%E5%A4%9A%E8%A8%80%E8%AA%9E%E9%9D%A2]]とサロゲートペア

--(参考) http://www.kanzaki.com/docs/jcode.html
--(参考) https://codezine.jp/article/detail/1592 ※

-[[正規表現>https://ja.wikipedia.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE]](grepからタグ付き正規表現まで)
--[[授業資料/正規表現]]
---文字クラス [ ]
---文字クラスの否定(補集合)[^ ]
---繰り返し ? + ※
---繰り返し(最長一致) ? + * ※
---繰り返し最短一致 +? *? ※
---n回以上m回以下のくり返し {n,m} ※
---グループ化  ()
---or(論理和)  |
---文頭 ^、文末 $
--[[タグ付き正規表現>授業資料/タグつき正規表現]]
---カッコ(半角丸カッコ)と\1(\2,\3…)を使う
---タグ付けへの応用例 (「.+?」) ->  <quote>\1</quote> ※
--後方参照
---マッチした部分を検索語の中で再利用する 例: (..)\1

**2017/06/13 プレーンテキストからXMLへ

***XML
-マークアップ言語とXML
--HTMLとXML
---SGML,XHTML
--タグ、要素、属性、属性値
---開始タグ <tag>、終了タグ </tag>
---<タグ 属性="属性値">テキスト<子要素/></タグ>
--空要素
---<br/>と<br></br> XMLとして等価
--ルート要素
---XML宣言
 <?xml version="1.0" encoding="Shift_JIS" ?>
---encoding宣言
---XML宣言の省略
--[[文字参照>https://ja.wikipedia.org/wiki/%E6%96%87%E5%AD%97%E5%8F%82%E7%85%A7]]
 &lt;, &gt;, &amp;
 &#x66fd;
--[[ホワイトスペース>https://en.wikipedia.org/wiki/Whitespace_character#Markup_languages]]

-[[XPath>https://ja.wikipedia.org/wiki/XML_Path_Language]]
--ノード(node)と軸(Axis)
---省略記法
--述語(predicate)

--(参考) http://gogodiet.net/z/xml/7.htm
--(参考) http://qiita.com/merrill/items/aa612e6e865c1701f43b

-[[XSLT>https://ja.wikipedia.org/wiki/XSL_Transformations]]
--HTMLへの変換
--[[ひまわり>http://www2.ninjal.ac.jp/lrc/index.php?%C1%B4%CA%B8%B8%A1%BA%F7%A5%B7%A5%B9%A5%C6%A5%E0%A1%D8%A4%D2%A4%DE%A4%EF%A4%EA%A1%D9]]用XSLT

--(参考) http://www.atmarkit.co.jp/fxml/tanpatsu/xslt/xslt00.html

-XMLの文書型定義と検証
--XML文書の検証(validation)
--Well-formed(整形式)
--Valid(妥当)
---DTD
---XMLスキーマ(xsd)
---RELAX NG

-Oxygen
--XPathによる検索((なぜかXPath2.0を選ばないと検索結果が返らなかった))
--スキーマの自動生成

**その他

***テキストデータとExcel
-ピボットテーブル
-文字列関数
--LEFT, RIGHT, MID 文字列の一部を取り出す
--LEN 文字列の長さ
--SEARCH 文字列から一致する部分文字列を探す
--SUBSTITUTE 文字列を置換する
-IF, IFERROR
--=IFERROR(LEFT(<品詞>,SEARCH("-",<品詞>)-1),<品詞>)
-[[VLOOKUP>授業資料/vlookup関数]]
-データ処理に適した形式
---http://honeshabri.hatenablog.com/entry/vlookup


***コマンドラインツール((DOSのコマンド。[]内はLinux))
-bash on Windows?
--とりあえずファイル操作 dir[ls], copy[cp], del[rm], move[mv], ren[rename], mkdir/rmdir
--バッチファイル[シェルスクリプト] .bat[.sh]
--(diff)
--(パイプ)


-ツールを組み合わせた処理(([[ブリコラージュ>https://ja.wikipedia.org/wiki/%E3%83%96%E3%83%AA%E3%82%B3%E3%83%A9%E3%83%BC%E3%82%B8%E3%83%A5]]))
--テキストエディタ、Excel、コマンドラインを自由に行き来する

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS