JavaScript 正規表現のソースを表示
新しいページはコチラ
移動:
案内
,
検索
[[JAVA Script#リファレンス]]に戻る。 引数に正規表現(Regular Expression)をとるメソッドのためのオブジェクトです。.execメソッドの引数で検索文字列を設定できるので、.RegExpオブジェクトだけで正規表現検索が実行できます。ややこしい正規表現による記述を再利用する場合には、このオブジェクトを使うとスッキリすることもあります。更に正規表現パターンマッチングを実施したときの便利な機能も提供してくれます。 == '''正規表現オブジェクトの生成 RegExp''' == 正規表現オブジェクト(入れ物・モノ)を生成するには、以下のように定義します。 *regexData1 = new RegExp() //空の正規表現オブジェクト *regexData2 = new RegExp("Regular Expression")//正規表現文字列 /Regular Expression/と同じ *regexData3 = new RegExp(”Regular Expression”, "g") //正規表現検索オプション初期化 /Regular Expression/g と同じ 上記のように生成した正規表現オブジェクトを文字列オブジェクトの正規表現を引数とするメソッド.matchや.replaceや.searchの引数に指定することができます。 サンプルプログラムは以下のとおりです。 <syntaxhighlight lang="javascript" line start="1"> <HTML> <HEAD> <TITLE>JavaScript RegExp</TITLE> </HEAD> <BODY> JavaScript RegExp<br /> <SCRIPT Language="JavaScript"> <!-- regexData1 = new RegExp() //空の正規表現オブジェクト regexData2 = new RegExp("Regular Expression")//正規表現文字列 /Regular Expression/と同じ regexData3 = new RegExp("Regular Expression", "g") //正規表現検索オプション初期化 /Regular Expression/g と同じ strData = new String("正規表現文字列検索(Regular Expression)(Regular Expression2)"); document.write("■RegExp<br />"); document.write("正規表現文字列検索 = ", strData.match(regexData2), "<br />"); document.write("正規表現文字列検索 = ", strData.match(regexData3), "<br />"); document.write("パターンマッチ = ", $1, $2,"<br />"); --> </SCRIPT> </BODY> </HTML> </syntaxhighlight> [[Media:JavaScript RegExp 01 declare.html|サンプル実行結果]] == '''正規表現検索の検索文字列参照 RegExp.input , RegExp.$_''' == 正規表現検索を実行する都度、書き換わるRegExpオブジェクト自体が保有する静的なプロパティです。つまり、オブジェクトから生成した変数オブジェクト毎には存在しないものです。したがって利用する場合は参照のみで、以下のようにして参照します。 *strRegExpData1 = RegExp.input のようにします。もしくは *strRegExpData2 = RegExp.$_ でも、検索対象を設定できます。ただし、正規表現検索の結果で一致するものがなかった場合は、RegExp.input、RegExp.$_、exec()の引数に与えた文字列が反映されません。 サンプルプログラムは以下のとおりです。 <syntaxhighlight lang="javascript" line start="1"> <HTML> <HEAD> <TITLE>JavaScript RegExp input</TITLE> </HEAD> <BODY> JavaScript RegExp input<br /> <SCRIPT Language="JavaScript"> <!-- regexData1 = new RegExp("Regular Expression")//正規表現文字列 /Regular Expression/と同じ regexData2 = new RegExp("Regular Expression2")//正規表現文字列 /Regular Expression2/と同じ document.write("■RegExp input<br />"); regexData2.exec("正規表現文字列検索(Regular Expression2)"); document.write("正規表現文字列検索input = ", RegExp.input, "<br />"); regexData1.exec("$_正規表現文字列検索(RegularExpression)"); document.write("正規表現文字列検索$_ = ", RegExp.$_, "<br />");//マッチしてないから入れ替わらない。 regexData1.exec("正規表現文字列検索(Regular Expression)"); document.write("正規表現文字列検索$_ = ", RegExp.$_, "<br />"); --> </SCRIPT> </BODY> </HTML> </syntaxhighlight> [[Media:JavaScript RegExp 02 input.html|サンプル実行結果]] == '''正規表現文字列設定 .compile''' == == '''正規表現文字列参照 .source''' == == '''正規表現検索実行 .exec''' == == '''正規表現検索の一致確認 .test''' == == '''正規表現検索の検索条件確認 .global(グローバルマッチング)''' == == '''正規表現検索の検索条件確認 .ignoreCase(大文字小文字区別無視)''' == == '''正規表現検索の検索条件指定 .multiline(改行コード無視) , $*''' == == '''正規表現検索開始位置の設定 .lastIndex''' == == '''パターンマッチング文字列参照 .$1~.$9 , $1~$9''' == == '''最後の検索結果参照 .lastMatch ,$&''' == == '''最後のパターンマッチング文字列参照 .lastPattern , $+''' == == '''最後の検索結果に対して、先頭の文字から検索位置までの文字列を取得 .leftContext , $`''' == == '''最後の検索結果に対して、検索終了位置から末尾までの文字列を取得 .rightContext , $<nowiki>'</nowiki>''' == [[JAVA Script#リファレンス]]に戻る。
JavaScript 正規表現
に戻る。
個人用ツール
ログイン
名前空間
ページ
議論
変種
表示
閲覧
ソースを表示
履歴表示
操作
検索
案内
メインページ
コミュニティ・ポータル
最近の出来事
最近の更新
おまかせ表示
ヘルプ
ツールボックス
リンク元
関連ページの更新状況
特別ページ