コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:JuthaDDA/Tips/正規表現集

半角括弧

[編集]
  •  ?\(((?:(?!\||\)).)*)\)(?!\]|\||#|.jpg|.png|.svg) ?($1)

WP:BRACKETの2021年の改訂に合わせた修正などに使用。曖昧さ回避用の括弧はおおむね除外されますが、テンプレート引数や外国語文、ファイル名内の括弧も検出されるため、要注意。

<ref>...</ref>

[編集]
  • <ref((?:(?!\/).)*?)>((?:.|\n)*?)<\/ref>

要素の内容における改行に対応(MediaWikiのソース・エディタは\nを使えないので非対応)、空要素を除外。$1は属性、$2は内容。

  • {{efn}}への置換
    • <ref group="注釈">((?:(?!=|<ref|\|).?)*?)<\/ref>{{efn|$1}}
  • {{efn2}}への置換
    • <ref group="注">((?:(?!=|<ref|\|).?)*?)<\/ref>{{efn2|$1}}

入れ子は対応できないので除外。=|は問題が発生する場合があるので除外。除外されたものは、以下で検出して個別に対処する。

  • "注釈"
    • <ref group="注釈">(.*?)<\/ref>
  • "注"
    • <ref group="注">(.*?)<\/ref>

|date=

[編集]
  • yyyy-mm-dd形式への置換
    • yyyy/mm/dd形式から
      • (date ?= ?)(\d{4})\/(\d{2})\/(\d{2})$1$2-$3-$4
  • yyyyMD形式から(2手順必要)
    1. (date ?= ?)(\d{4})年(\d{1,2})月(\d{1,2})日$1$2-0$3-0$4
    2. (date ?= ?)(\d{4}-)\d?(\d{2}-)\d?(\d{2})$1$2$3$4

;<dt>...</dt>)誤用

[編集]
  • ^;(.*\n)(?!:)

引用符

[編集]
  • (?<!')'(?!')

強調用の''...'''''...'''を除外

  • (?<!=)"(.*?)"

HTML属性を除外(2つ以上の属性がある場合は誤検出)