ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

VBA で正規表現を使う(RegExp オブジェクトのメソッド)

      2018/03/25

RegExp オブジェクトのメソッド

RegExp オブジェクトの詳細に関しては、VBA で正規表現を使う(RegExp オブジェクト)、プロパティの詳細に関しては、RegExp オブジェクトのプロパティ を参照してください。


Test メソッド

指定された文字列を正規表現で検索した結果、パターンに一致する文字列が検索されたかどうかを判定します。


【書式】

object.Test ( string )


引数・戻り値

  • object  ・・・  対象となる RegExp オブジェクトを指定します。
  • string  ・・・  正規表現による検索の対象となるテキスト文字列を指定します。
  • 戻り値  ・・・  ブール型(Boolean)。パターンに一致する文字列が見つかると True、見つからないと False を返します。


実行結果

RegExp オブジェクト Test メソッド


Replace メソッド

正規表現で検索して見つかった文字列を置換します。


【書式】

object.Replace ( string1, string2 )


引数・戻り値

  • object  ・・・  対象となる RegExp オブジェクトを指定します。
  • string1  ・・・  検索および置換の対象となるテキスト文字列を指定します。
  • string2  ・・・  置換するテキスト文字列を指定します。
  • 戻り値  ・・・  正規表現で検索し、マッチした文字列を引数 string2 で指定した文字列に置き換えた文字列を返します。マッチするものが見つからなかった場合は、元の文字列(引数 string1 で指定した文字列)を返します。


実行結果

RegExp オブジェクト Replace メソッド


Execute メソッド

正規表現で検索した結果を Matches コレクションとして返します。


【書式】

object.Execute ( string )


引数・戻り値

  • object  ・・・  対象となる RegExp オブジェクトを指定します。
  • string  ・・・  正規表現による検索の対象となるテキスト文字列を指定します。


実行結果

RegExp オブジェクト Execute メソッド



Matches コレクション


Count プロパティ


【書式】

<取得>
object.Matches.Count


引数・戻り値

  • object  ・・・  対象となる RegExp オブジェクトを指定します。
  • 戻り値  ・・・  Execute メソッドにより取得した Matche オブジェクトの数。


Item プロパティ


【書式】

<取得>
object.Matches [.Item] (number)


引数・戻り値

  • object  ・・・  対象となる RegExp オブジェクトを指定します。
  • number  ・・・  インデックス値(0 から Matches.Count – 1 までの数値)を指定します。
  • 戻り値  ・・・  Execute メソッドにより取得した Matche オブジェクト



Matche オブジェクトのプロパティ等


FirstIndex プロパティ

マッチした部分の位置を取得します。


【書式】

<取得>
object.FirstIndex


引数・戻り値

  • object  ・・・  対象となる Matche オブジェクトを指定します。
  • 戻り値  ・・・  検索文字列の最初の位置を0とするオフセット値。


Length プロパティ

マッチした文字列の長さを取得します。


【書式】

<取得>
object.Length


引数・戻り値

  • object  ・・・  対象となる Matche オブジェクトを指定します。


Value プロパティ

マッチした文字列を取得します。


【書式】

<取得>
object.Value


引数・戻り値

  • object  ・・・  対象となる Matche オブジェクトを指定します。


SubMatches コレクション

正規表現で検索を実行すると、サブ条件が取得を示す () (カッコ)で囲まれている場合にサブマッチ文字列が 0 個以上作成されます(SubMatches コレクション)。SubMatches コレクションの各項目へは、SubMatches(number) の形でアクセスします。


【書式】

<取得>
object.SubMatches( number )


引数・戻り値

  • object  ・・・  対象となる Matche オブジェクトを指定します。
  • number  ・・・  0 以上 SubMatches.Count -1 までのインデックス値を指定します。
  • 戻り値  ・・・  SubMatches コレクション。SubMatches コレクションの各項目は、正規表現によって検索および取得される文字列です。


実行結果

RegExp オブジェクト Matches コレクション



正規表現のパターン例


検索内容 正規表現のパターン例
メールアドレス ^([\w]+)([\w\.-]+)@([\w_\-]+)\.([\w_\.\-]*)[a-z][a-z]$
HTMLのタグ <(.*)>.*<\/\1>
ひらがな(5文字) [あ-ん]{5}
カタカナ(3文字以上) [ア-ン]{3,}
半角カタカナ(5文字以下) [ヲ-゚]{1,5}
半角英数(5文字以上10文字以下) [a-zA-Z0-9]{5,10}
郵便番号 ^(\d{3})-(\d{4})$
電話番号(市外局番含む) ^0(\d{1}-\d{4}|\d{2}-\d{3}|\d{3}-\d{2}|\d{4}-\d{1})-\d{4}$
電話番号(携帯) ^0[7|8|9|]0-\d{4}-\d{4}$


 - VBA基本 , , , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

フォントサイズ(Size,StandardFontSize)例
フォントサイズ(Size プロパティ・StandardFontSize プロパティ)

フォントサイズを取得・設定する(Size プロパティ) Size プロパティは、 …

文字列:文字列左から指定文字数取得(Left 関数,LeftB 関数)

Left 関数・LeftB 関数 の使い方 【書式】 result_left = …

フォントの設定(Font プロパティ)

フォントの設定(Font プロパティ) 指定されたオブジェクトのフォント情報(F …

Timer 関数 使用例
日付時刻:経過時間を取得( Timer 関数 )

Timer 関数の使い方 【書式】 result = Timer () 【戻り値 …

データ型を調べて、そのデータ型を示す数値を返す(VarType 関数)

VarType 関数 の使い方 VarType 関数は、引数に、データ型を調べた …

RGB値一覧表
RGB 値一覧表(XlRgbColor 列挙型)

RGB 値(XlRgbColor 列挙型)一覧表 RGB 関数を使用して、出力さ …

配列の添字の最小値を「1」に設定する

Option Base ステートメントを使用する 【書式】 Option Bas …

Math 関数( Abs,Atn,Cos,Exp,Log,Rnd,Sgn,Sin,Sqr,Tan )

Abs 関数 【書式】 value = Abs ( number ) 【引数・戻 …

日付時刻:時・分・秒を取得(Hour、Minute、Second 関数)

日付時刻から時・分・秒を取得する関数 【書式】 time_hour = Hour …

データ型を調べてそのデータ型を示す文字列を返す(TypeName 関数)

TypeName 関数 の使い方 TypeName 関数は、引数に、データ型を調 …