ray88’s diary

お仕事で困ったとき用の自分用の覚書

JavaScript 正規表現・RegExp オブジェクト 宣言とフラグ・メソッド

正規表現 目次 - ray88’s diary
JavaScript 目次 - ray88’s diary
JavaScript 正規表現による文字列の検索① excecメソッド - ray88’s diary
JavaScript 正規表現による文字列の検索② Stringオブジェクトのmatchメソッド - ray88’s diary
JavaScript 正規表現による文字の置換・分割 stringオブジェクトのreplaceメソッドとsplitメソッド - ray88’s diary
RegExpの宣言

new RegExp('正規表現'[,'フラグ'])

正規表現は以下のようにスラッシュで囲むことによる正規表現リテラルで表記できる

/正規表現/フラグ

■フラグ:正規表現による検索時に機能するオプションを設定するもの
     複数のフラグを使用する場合は、「gi」などと並べて指定可能

フラグ 説明
g グローバルサーチ。最初のマッチで止まらずに全てのマッチを
i 大文字・小文字を区別しない
m 複数行を検索する

■主なプロパティとメソッド


分類

メンバー

戻り値

説明

メソッド

excex(str)

Array

文字列に対して正規表現で検索した結果を配列で返す

test(str)

Boolean

文字列に対して正規表現での検索テスト結果を真偽値でで返す

toString()

String

正規表現を文字列として返す

プロパティ

lastIndex

-

次のマッチが始まる位置

global

-

gフラグの真偽値

ignoreCase

-

iフラグの真偽値

multiline

-

mフラグの真偽値

source

-

正規表現パターンのテキスト部
■サンプルコード

function myFunction(){
  const str = "I'm Bob. Tom is my friend."
  //構文:/正規表現/フラグ
  const reg = /.o./g;
  console.log(reg.test(str));//true

  console.log(reg.toString());///.o./g
  console.log(reg.source);//.o.

  console.log(reg.global);//true
  console.log(reg.ignoreCase);//false
  console.log(reg.multiline);//false
}