すぐ使える!正規表現サンプル集
Google
WWW を検索 hodade.com を検索

      このエントリーをはてなブックマークに追加

7.プログラムで正規表現を使う

各種プログラミング言語も正規表現をサポートしています。

 Perl
 PHP
 Visual Basic 6
 Visual Basic .NET
 VBScript
 Java
 JavaScript


Perl

標準で正規表現を使うことができます。
決まった書式がありますので、書式に従って記述してください。

検索

$x =~ /検索文字/;

置換

$x =~ s/置換対象/置換文字/gi;



PHP

標準で正規表現を使うことができます。
関数を使用しますので、関数の書式に従って記述してください。

検索

$pattern = "/検索文字/";
preg_match($pattern, $x);

置換

$pattern = "/置換対象/";
$replacement = "置換文字";
preg_replace($pattern, $replacement, $x);



Visual Basic 6

参照設定で 「Microsoft VBScript Regular Expressions 5.5」 を参照することにより、正規表現を使うことができます。
おそらく標準で入っているとおもいます。

検索

Dim reg As New RegExp
reg.Pattern = "検索文字"
reg.Test(str)

  • reg.Test は、一致する文字が含まれていれば True、含まれていなければ False を返します。
  • VBScriptの方にも同様の説明があるのでご覧下さい。
置換

Dim reg As New RegExp
reg.Pattern = "置換対象"
str = reg.Replace(str, "置換文字")

  • reg.Replace は、置換後の文字列を返します。


Visual Basic .NET

「System.Text.RegularExpressions」 配下のクラスを使用することにより、正規表現を使うことができます。
このクラスは標準装備です。

検索

Dim reg As New System.Text.RegularExpressions.Regex("検索文字")
Dim m As System.Text.RegularExpressions.Match = reg.Match(str)
Debug.WriteLine(m.Success)

  • m.Success は、一致する文字が含まれていれば True、含まれていなければ False が入ります。
置換

Dim reg As New System.Text.RegularExpressions.Regex("置換対象")
str = reg.Replace(str, "置換文字")

  • reg.Replace は、置換後の文字列を返します。
  • 詳説 正規表現 第3版では.NETの正規表現について詳しく書かれています。


VBScript

RegExp オブジェクトを使用することにより、正規表現を使うことができます。
このオブジェクトは標準装備です。

検索

Function RegExpTest(patrn, strng)
  Dim regEx, retVal ' 変数を作成します。
  Set regEx = New RegExp ' 正規表現を作成します。
  regEx.Pattern = patrn ' パターンを設定します。
  regEx.IgnoreCase = False ' 大文字と小文字を区別するように設定します。
  retVal = regEx.Test(strng) ' 検索をテストします。
  If retVal Then
    RegExpTest = "一致する文字列が 1 つ以上見つかりました。"
  Else
    RegExpTest = "一致する文字列が見つかりません。"
  End If
End Function
MsgBox(RegExpTest("is.", "IS1 is2 IS3 is4"))

  • 詳しい使い方はMicrosoftの公式サイトをご覧ください。
  • 上記はパターンに一致するかどうかの判定です。パターンに一致した文字を取得したい場合は、Executeメソッドを実行し、結果をMatchesコレクションとして取得すると取り出すことができます。
  • さらに、後方参照を取得したい場合は、Matchesコレクションから取得したオブジェクトからさらに、SubMatchesコレクションを取得すると取り出すことができます。
置換

Function ReplaceTest(patrn, replStr)
  Dim regEx, str1 ' 変数を作成します。
  str1 = "The quick brown fox jumped over the lazy dog."
  Set regEx = New RegExp ' 正規表現を作成します。
  regEx.Pattern = patrn ' パターンを設定します。
  regEx.IgnoreCase = True ' 大文字と小文字を区別しないように設定します。
  ReplaceTest = regEx.Replace(str1, replStr) ' 置換します。
End Function

MsgBox(ReplaceTest("fox", "cat")) ' 'fox' を 'cat' で置換します。



Java

Stringクラスにて、標準で正規表現を使うことができます。(ただしJava1.4以上)

検索

String str = "abcdef";
str.matches("検索文字");

置換

String str = "abcdef";
str.replaceAll("置換対象","置換文字");



JavaScript

標準で正規表現を使うことができます。

検索

str = "abcdef";
str.match("検索文字");

置換

str = "abcdef";
str = str.replace("置換対象","置換文字");






西暦を検索する正規表現もあります。

1.正規表現とはなにか?
正規表現を簡単に説明すると?

2.正規表現を使う準備
まずはエディタの設定

3.正規表現サンプル集
【検索編】

検索で使える正規表現

4.正規表現サンプル集
【置換編】

置換で使える正規表現

5.正規表現のお勉強
正規表現で検索
少し高度な検索
文字列置換
最短一致について
エスケープ文字のこと
上から順番にだんだん難しくなります

6.エディタの強調表示でテキストに色づけ
色つきで見やすくできます

7.プログラムで正規表現を使う
各種プログラム言語でも使えます

8.お買い物コーナー
マルチディスプレイがおすすめです

9.正規表現だけでは対応できない場合
フリーソフトを使ってみましょう

10.ナイスな記事集
ここよりスゴイ正規表現がある


Since 2005.09.30 / HODADE SYSTEMS / Update 2010.12.10