Excelの文字列関数とIF
文字列関数
- 例:BCCWJのジャンル(NDC)の整理
- 先頭の文字を取り出す(NDCの一次区分(=類))
- スラッシュで区切られた最初の部分(ジャンルの大分類)
- =LEFT(<ジャンルのセル>,SEARCH("/",<ジャンルのセル>)-1)
- 集計用に用意した列で文字列処理関数を利用する
- LEFT
- RIGHT
- MID
- LEN
- SEARCH
- SUBSTITUTE
IFによる条件分け
- 応用例:BCCWJの品詞の大分類を取り出す
- =IFERROR(LEFT(<品詞>,SEARCH("-",<品詞>)-1),<品詞>)
Excelの文字列関数で前後文脈を整える
- 後文脈の「#」より後を消す(「#」がない場合はそのまま)
=IF(ISERROR(SEARCH("#",<後文脈>)),<後文脈>,LEFT(<後文脈>,SEARCH("#",<後文脈>)))
- 前文脈の「#」以前を消す(「#」がない場合はそのまま)*1
=RIGHT(<前文脈>,LEN(<前文脈>)-(FIND("~",SUBSTITUTE("#"&<前文脈>,"#","~",LEN("#"&<前文脈>)-LEN(SUBSTITUTE("#"&<前文脈>,"#",""))),1)-1))
※当該列をエディタにコピーして正規表現で置換した方が早い