正規表現 メタキャラクタ 検索・置換 後編

バイオインフォ道場、くまぞうです。

sed や awk、grep、その他のプログラム処理で文字列を扱うときに、よく用いられる「正規表現」についてまとめます。後編です。(前編を読む

スポンサーリンク



正規表現とは

正規表現とは、文字列集合を特殊文字(メタキャラクタ)で表現する方法です。メタキャラクタには、$(ダラー)や^(サーカムフレックス)、[](ブラケット)などが良く使われます。例えば、[0-9]は0〜9の数字のどれか、[Ww]ordはWordもしくはwordです。使うプログラムによって、正規表現の詳細は異なる場合がります。共通して使える基本的なものを中心に覚えると良いと思います。

基本的な正規表現メタキャラクタ2

行の先頭でマッチ

行の先頭が指定した文字に一致するものにマッチする。

  • 書式
    ^(サーカムフレックス)

  • ^a(aから始まる文字。apple、arrow、a123など)
  • 使い方
          $ echo "WoW" | sed 's/^W/h/g'
          hoW

行の末尾でマッチ

行の末尾が指定した文字に一致するものにマッチする。

  • 書式
    $(ダラー)

  • e$(eで終わる文字。apple、see、a123eなど)
  • 使い方
          $ echo "elle" | sed 's/e$/E/g'
          ellE

繰り返し部分にマッチ

直前の1文字が指定回数出現した部分にマッチする。\{n\}は、ちょうどn回。\{n,\}は、n回以上。\{n,m\}は、n〜mの任意の回数。

  • 書式
    \{n,m\}

  • 10\{2,3\}(1000か10000)
  • 使い方
          $ cat bbb.txt 
          word
          wood
          sky
    
          $ cat bbb.txt | sed 's/o\{2\}/-/'
          word
          w-d
          sky
    
          cat bbb.txt | sed 's/o\{1\}/-/'
          w-rd
          w-od
          sky
    
          $ cat bbb.txt | grep -e "o\{2\}"
          wood

特殊文字の機能を消失

特殊文字の機能を消失する。

  • 書式
    \(バックスラッシュ)

  • \( は、'(‘。良く用いられる例は、\( \) \{ \} \\。
  • 使い方
          $ echo "\"
          表示できない。
    
          $ echo "\\"
          \(\が表示できる)

前編を読む

スポンサーリンク





ピックアップ記事

  1. awk split サンプルでわかる列の分割とセパレータ(文字・正規表現)の指定方法

    awkのsplit関数は、セパレータを指定して文字列を分割することができます。セパレータには文字や…
  2. R 使い方 グラフの色 自作のカラーパレットとデフォルトのカラーパレット

    グラフを描画する際、色の組み合わせを1つ1つ考えるのは面倒ですよね。Rには、あらかじめ色の組み合わ…
  3. R plot 重ねる方法3パターン サンプルでわかるRの使い方

    Rでグラフ (plot) を重ねる方法は、「単純な追加」「図に重ねて描画」「濃淡で重なり表現」の3…

人気記事

  1. R データ型 - 文字列・ベクター・データフレーム・マトリックス など-, R言語, スクリプト

    R subset関数 データフレームやmatrixからの条件指定による行・列の抽出
    R の subset関数は、データフレームやマトリックスか…
  2. Excel, その他, 統計

    z-score 計算方法 エクセル(Excel) 編
    統計処理で、大きく変化しているなどの判断基準にも使われる値…
  3. IGV, 解析ツール

    IGV 使い方 インストール〜便利な使い方まで | リファレンス・マッピングデータ・アノテーションを読み込んで表示しよう
    IGV(Integrative Genomics View…

おすすめ記事

  1. R言語, グラフ

    R 使い方 軸・ラベルの調整(向き・サイズ・色など) グラフの描き方
    Rによるplot(グラフ)の描画は、手軽で大変便利です。た…
  2. awk, bash 文字列操作, シェルスクリプト

    bash 部分文字列・置換・長さ・連結・分割の文字列処理
    bashのよく使う文字列処理、部分文字列・置換・連結・長さ…
  3. bash 応用, シェルスクリプト

    シェル スクリプト ファイル存在チェック・空のファイルチェック
    bashでスクリプトを作成するときに、よく使うのがファイル…