mocchaso note

サーバーエンジニアが何か色々呟いているところ。

言語処理100本ノック 2020「28. MediaWikiマークアップの除去」

(まとめ: 言語処理100本ノック 2020年版を解いていく。 - mocchaso note

27本目に続き、↓をベースに実装しました。 qiita.com

ファイルの除去に関しては、上記サイトとは異なり、内部リンクマークアップの除去とは別パターンでマッチさせました。
(内部リンクマークアップの除去にて、表示文字の箇所にlangテンプレートを含む場合も検知できるように改造したため)

+以下、実装している上での学び等のメモです。

正規表現の記法

  • ?:
    後方参照(キャプチャ)しないグループ化。
  • ^
    行頭だけではなく、文字の否定も表すことができる。
    文字クラス([xyz]のように使うパターン)の最初の括弧の直後に^が来ていたら、「否定」
    ※例: [^|] = |以外の文字にマッチするパターン

テンプレート

+自分の方では、Cite webテンプレート、centerテンプレートも行けそうだったので、除去してみました。
lang
仮リンク
Cite Web
center