コンピュータよもやま話 - 正規表現 - vim


クラウディア 


1. 概要
2. 基本
3. Magic
4. 特殊メタ文字
5. 参考サイト

1. 概要

 「vim」で置換する際にも、正規表現が使えるようです。

2. 基本

 まず、「vim」の正規表現は、主に「POSIX」標準(特に「BRE: Basic Regular Expression」)をベースにしつつ、そこから独自の拡張や進化を遂げた仕様を基本としている・・・とのことです。  以下に、「vim」独自で発展した、方言的なものを。

3. Magic

 「Vim」の正規表現の最大の特徴は、「どの文字をメタ文字(特別な意味を持つ文字)として扱うか」を切り替える4つのモード(マジック)が存在することなのだそうです。  初期状態(ノーマル)では、一部の記号(「*」や「.」など)はそのままメタ文字になりますが、「+」や「?」、「()」などをメタ文字として使うには「\+」や「\(」のようにバックスラッシュ(エスケープ)が必要になりますとのこと。  まだよう理解できておりませんが。  検索パターンの先頭に以下のメタ文字を付けることで、モードを切り替えられます。
モード 指定子 特   徴 備考
Very Magic \v 最も現代的なプログラミング言語(PCRE)に近い。 ほぼすべての記号がデフォルトでメタ文字になる。
Magic \m デフォルト設定。 「.」や「*」はメタ文字だが、「+」や「()」はエスケープが必要。
No Magic \M 「^」と「$」以外はすべてただの文字列として扱う。
Very No Magic \V 完全なプレーンテキスト検索。すべての記号がただの文字列になり、エスケープなしでそのまま検索できる。

 わたしには、「\V」が使い勝手がよさそうな・・・。

4. 特殊メタ文字

 以下、「vim」独自のメタ文字を紹介します。
記号 意   味 備考
\<, \> 単語の先頭と末尾(単語境界)
\s いわゆるホワイトスペースであるが、改行を含まない
\d 数字([0-9] と同等)
\a 英文字([a-zA-Z] と同等)

 改行を含む、任意の一文字は「\_.」で表現し、改行を含むホワイトスペースは「\_s」で表現するようです。

5. 参考サイト

 本ページは、下記のサイトおよび「Gemini」伍長を参考にさせていただきました。
Vim の正規表現アレコレ

audiobook.jp
AbemaTV 無料体験
U-NEXT
それがだいじWi-Fi
EaseUS
Amazonギフトカード
ネットオークションの相場、統計、価格比較といえばオークファン
EMEET 1
健康サポート特集
ハイスピードプラン
earthcar(アースカー)
薬屋の独り言
JETBOY
葬送のフリーレン Prime Video
損保との違い
ベルリッツ
【usus ウズウズ】
サウンドハウス
アフィリエイトのアクセストレード
5G CONNECT
TikTok Shop 【リピート用プログラム】