日本語コーパス構築のための テキスト処理の基礎

〜言語処理やプログラミング以前の基礎知識

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

テキストデータ

  • 正規表現(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宣言の省略
    • 文字参照
      &lt;, &gt;, &amp;
      &#x66fd;
    • ホワイトスペース
  • XPath
    • ノード(node)と軸(Axis)
      • 省略記法
    • 述語(predicate)
  • XMLの文書型定義と検証
    • XML文書の検証(validation)
    • Well-formed(整形式)
    • Valid(妥当)
      • DTD
      • XMLスキーマ(xsd)
      • RELAX NG
  • Oxygen
    • XPathによる検索*1
    • スキーマの自動生成

その他

テキストデータとExcel

  • ピボットテーブル
  • 文字列関数
    • LEFT, RIGHT, MID 文字列の一部を取り出す
    • LEN 文字列の長さ
    • SEARCH 文字列から一致する部分文字列を探す
    • SUBSTITUTE 文字列を置換する
  • IF, IFERROR
    • =IFERROR(LEFT(<品詞>,SEARCH("-",<品詞>)-1),<品詞>)
  • VLOOKUP
  • データ処理に適した形式

コマンドラインツール*2

  • bash on Windows?
    • とりあえずファイル操作 dir[ls], copy[cp], del[rm], move[mv], ren[rename], mkdir/rmdir
    • バッチファイル[シェルスクリプト] .bat[.sh]
    • (diff)
    • (パイプ)
  • ツールを組み合わせた処理*3
    • テキストエディタ、Excel、コマンドラインを自由に行き来する

*1 なぜかXPath2.0を選ばないと検索結果が返らなかった
*2 DOSのコマンド。[]内はLinux
*3 ブリコラージュ

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