正規表現 事例 - ntuf/Tips GitHub Wiki

正規表現

置換対象 検索文字列 置換文字列 置換結果 何がしたかったか
$ git branch -d "[branch-name]"
指定されたブランチを削除します。
(^. git .+)\n(.+) |$2|$1| |$ git branch -d "[branch-name]"|指定されたブランチを削除します。| ネットのgitコマンド記事をMarkdown記法に変換したかった。内容、コマンドの順で。
(https?|ftp)://([^:/]+)(?::(\d+))?(/\S*)? URLにマッチ
(?:\d{4})([-/.]?)(?:\d{2}\1(?:\d{2})) 日付にマッチ
YYYY-MM-DD,
YYYY/MM/DD,
YYYY.MM.DD,
YYYYMMDD
\d{3}-\d{4} 郵便番号
3桁-4桁
\d{3}(?:-\d{4}|-\d{2})? 郵便番号
3桁-4桁,3桁-2桁
0\d{1,4}-\d{1,4}-\d{4} 電話番号にマッチ
国内プレフィックス「0」
市外局番1〜4桁
市内局番1〜4桁
加入者番号4桁
aaa
bbb
ccc
\n \n, aaa,
bbb,
ccc
改行前にカンマを加える
e e
e   e
( | )+ 「半角スペース一つ」 e e
e e
無駄な半角全角スペースを一つにする
e


e

e
(\n\n+) \n e
e
e
無駄な連続改行を一つだけの改行にする
\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} IPアドレスにマッチ
[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-\.]+\.[a-zA-Z]+ メールアドレスにマッチ
Japan(?!ese) JapanにはマッチするがJapaneseにはマッチしない
(?<!dis)communication communicationにはマッチするがdiscommunicationにはマッチしない
<a href="https://www.xxx.com/">トップページへ</a> <a\s.*?\bhref\s*=\s*(?:([^'"\s]+)|'([^']+)'|"([^"]+)")[^>]*> $3 トップページへ HTMLのa要素からhref属性の亜値だけを抜き出す
⚠️ **GitHub.com Fallback** ⚠️