タグ
  Active Directory (51)
  ANSI (1)
  bash (1)
  BAT (14)
  bind (1)
  CentOS (3)
  CSharp (1)
  C言語 (4)
  DNS (3)
  Excel (1)
  Fedora (4)
  FreeBSD (3)
  iSCSI (1)
  Java (11)
  JavaScript (6)
  Link (4)
  Linux (15)
  Mail (1)
  Microsoft (4)
  NIS (1)
  OpenLDAP (2)
  OpenSolaris (4)
  PHP (2)
  PostgreSQL (2)
  PowerShell (33)
  RFC (3)
  Solaris (10)
  SQL Server (1)
  Ubuntu (3)
  VBScript (65)
  Visual Basic (1)
  VMware (2)
  Windows (14)
  WMI (16)
  WSF (5)
  WSH (10)
  作成中 (5)
  慣用句 (1)
  正規表現 (6)
Microsoft の正規表現
この構文はマイクロソフトの正規表現RegExp オブジェクトのための構文です。Perl、PHPとは動作が異なる可能性があります。
使用例
正規表現 一致する内容
/^\s*$/ 空行に一致
/\d{2}-\d{5}/ 2 桁の数字、ハイフン、および 5 桁の数字で構成される ID 番号などを検査
/<\s*(\S+)(\s[^>]*)?>[\s\S]*<\s*\/\1\s*>/ HTML タグ
メタ文字
文字 説明
\ 次に続く文字が特殊文字、リテラル、前方参照、または 8 進エスケープであることを示します。たとえば、'n' は文字 "n" と一致しますが、'\n' は改行文字と一致します。'\\' は "\" と、"\(" は "(" と一致します。
^ 入力文字列の先頭と一致します。RegExp オブジェクトの Multiline プロパティが設定されている場合は、'\n' または '\r' の直後とも一致します。
$ 入力文字列の末尾と一致します。RegExp オブジェクトの Multiline プロパティが設定されている場合は、'\n' または '\r' の直前とも一致します。
* 直前の文字または部分式と 0 回以上一致します。たとえば、zo* は "z" と "zoo" のどちらにも一致します。* は {0,} と同じ意味です。
+ 直前の文字または部分式と 1 回以上一致します。たとえば、'zo+' は "zo" や "zoo" とは一致しますが、"z" とは一致しません。+ は {1,} と同じ意味です。
? 直前の文字または部分式と 0 回または 1 回一致します。たとえば、"do(es)?" は "do" または "does" の "do" と一致します。? は {0,1} と同じ意味です。
{n} n には、0 以上の整数を指定します。直前の文字と正確に n 回一致します。たとえば、'o{2}' は "Bob" の 'o' とは一致しませんが、"food" の 2 つの 'o' とは一致します。
{n,} n には、0 以上の整数を指定します。少なくとも n 回一致します。たとえば、'o{2,}' は "Bob" の "o" とは一致しませんが、"foooood" のすべての "o" とは一致します。'o{1,}' は 'o+' と同じ意味です。'o{0,}' は 'o*' と同じ意味です。
{n,m} m および n には 0 以上の整数を指定します。n は m 以下です。n ~ m 回一致します。たとえば、"o{1,3}" は "fooooood" の最初の 3 つの "o" と一致します。'o{0,1}' は 'o?' と同じ意味です。コンマと数の間には空白を入れません。
? 他の量指定子 (*, +, ?, {n}, {n,}, {n,m}) の直後に指定すると、一致パターンが最短一致になります。既定のパターンでは、できるだけ多くの文字列と一致するのに比べて、最短一致パターンでは、できるだけ少ない文字列と一致します。たとえば、文字列 "oooo" に対して、'o+?' を指定すると 1 つの "o" と一致し、'o+' を指定するとすべての "o" と一致します。
. "\n" を除く任意の 1 文字に一致します。'\n' を含めて任意の文字と一致させるには、'[\s\S]' などのパターンを指定します。
(pattern) pattern と一致した文字列を記憶する部分式です。一致する文字列が見つかったら記憶され、その部分は Matches コレクションから $0…$9 プロパティを使用して取得できます。かっこ ( ) と一致させるには、'\(' または '\)' を指定します。
(?:pattern) pattern と一致しても、その文字列が記憶されない部分式です。後で使用できません。"または" を意味する (|) を使用して、パターンの一部を結合するときに便利です。たとえば、"industry|industries" と指定する代わりに、"industr(?:y|ies)" と指定する方が簡潔です。
(?=pattern) 肯定先読みを実行する部分式です。pattern に一致する文字列が始まる位置にある検索文字列と一致します。一致した文字列は記憶されず、後で使用することはできません。たとえば "Windows (?=95|98|NT|2000)" は、"Windows 2000" の "Windows" には一致しますが、"Windows 3.1" の "Windows" には一致しません。先読み処理では、読み進まれた文字は処理済みとは見なされません。一致の検出後、次の検索処理は先読みされた文字列の後からではなく、一致文字列のすぐ後から開始されます。
(?!pattern) 否定先読み検索を実行する部分式です。pattern に一致しない文字列が始まる位置にある検索文字列と一致します。一致した文字列は記憶されず、後で使用することはできません。たとえば "Windows (?!95|98|NT|2000)" は、"Windows 3.1" の "Windows" には一致しますが、"Windows 2000" の "Windows" には一致しません。先読み処理では、読み進まれた文字は処理済みとは見なされません。一致の検出後、次の検索処理は先読みされた文字列の後からではなく、一致文字列のすぐ後から開始されます。
x|y x または y と一致します。たとえば、"z|food" は "z" または "food" と一致します。"(z|f)ood" は、"zood" または "food" に一致します。
[xyz] 文字セットを指定します。角かっこで囲まれた文字のいずれかに一致します。たとえば、'[abc]' は "plain" の 'a' と一致します。
[^xyz] 除外する文字セットを指定します。角かっこで囲まれた文字以外の文字に一致します。たとえば、'[^abc]' は "plain" の 'p' と一致します。
[a-z] 文字の範囲を指定します。指定した範囲に含まれる任意の文字に一致します。たとえば、'[a-z]' は小文字の英字 a ~ z の範囲にある任意の文字と一致します。
[^a-z] 否定の文字の範囲を指定します。指定した範囲に含まれていない任意の文字に一致します。たとえば、'[^a-z]' は小文字の英字 a ~ z の範囲外にある任意の文字と一致します。
\b 単語の境界と一致します。単語の境界とは、単語と空白との間の位置のことです。たとえば、'er\b' は "never" の 'er' と一致しますが、"verb" の 'er' とは一致しません。
\B 単語の境界以外と一致します。たとえば、'er\B' は "verb" の 'er' と一致しますが、"never" の 'er' とは一致しません。
\cx x で指定した制御文字と一致します。たとえば、\cM は Control-M または復帰文字と一致します。x の値は、A ~ Z または a ~ z の範囲内で指定します。それ以外を指定すると、リテラル文字 'c' と認識されます。
\d 任意の 10 進文字と一致します。[0-9] と同じ意味です。
\D 10 進数字以外の任意の文字と一致します。[^0-9] と同じ意味です。
\f フォーム フィード文字と一致します。\x0c および \cL と同じ意味です。
\n 改行文字と一致します。\x0a および \cJ と同じ意味です。
\r キャリッジ リターン文字と一致します。\x0d および \cM と同じ意味です。
\s 空白、タブ、フォーム フィードなどの任意の空白文字と一致します。[ \f\n\r\t\v] と同じ意味です。
\S 空白文字以外の任意の文字と一致します。[^ \f\n\r\t\v] と同じ意味です。
\t タブ文字と一致します。\x09 および \cI と同じ意味です。
\v 垂直タブ文字と一致します。\x0b および \cK と同じ意味です。
\w 単語に使用される任意の文字と一致します。アンダースコアも含まれます。'[A-Za-z0-9_]' と同じ意味です。
\W 単語に使用される文字以外の任意の文字と一致します。'[^A-Za-z0-9_]' と同じ意味です。
\xn n (16 進数のエスケープ値) と一致します。16 進数のエスケープ値は 2 桁である必要があります。たとえば、'\x41' は "A" と一致します。'\x041' は '\x04' および "1" と同じ意味です。この表記により、正規表現で ASCII コードを使用できるようになります。
\num num (正の整数) と一致します。既に見つかって記憶されている部分を参照します。たとえば、'(.)\1' は、連続する 2 つの同じ文字と一致します。
\n 8 進数のエスケープ値または前方参照を指定します。\n の前に少なくとも n 個の記憶された部分式がある場合、n は前方参照になります。それ以外の場合で n が 8 進数値 (0 ~ 7) である場合は、n は 8 進エスケープ値です。
\nm 8 進数のエスケープ値または前方参照を指定します。\nm の前に少なくとも nm 個の記憶された部分式がある場合、nm は前方参照になります。\nm の前に少なくとも n 個の記憶された部分式がある場合は、n が前方参照で、リテラル m が後に続きます。どちらの条件にも当てはまらない場合で n および m が 8 進数 (0 ~ 7) である場合、\nm は 8 進数のエスケープ値 nm と一致します。
\nml n が 8 進数値の 0 ~ 3 で、m と l が 8 進数値 (0 ~ 7) の場合は、8 進エスケープ値 nml と一致します。
\un n と一致します。n には Unicode 文字で表した 4 桁の 16 進数を指定します。たとえば、\u00A9 は著作権の記号 (©) と一致します。
[リロード] [記事修正] [新規作成] [使用方法]
©2004-2010 UPKEN