正規表現 事例 - 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属性の亜値だけを抜き出す |