[]
        
(Showing Draft Content)

REGEXEXTRACT

要約

REGEXEXTRACT 関数を使用すると、指定された正規表現に基づいて文字列からテキストを抽出できます。 最初の一致、すべての一致、または最初の一致からグループをキャプチャすることができます。

構文

=REGEXEXTRACT(text, pattern, [return\_mode], [case\_sensitivity])

引数

引数

説明

text

(必須)

文字列または文字列を抽出するテキストを含むセルへの参照。

pattern

(必須)

抽出するテキストのパターンを記述する正規表現 ("regex")。

return_mode

抽出する文字列を指定する数値。 既定では、戻りモードは 0 です。 設定できる値は次のとおりです。

0: パターンに一致する最初の文字列を返します(デフォルト)

1: パターンに一致するすべての文字列を配列として返します

2: 最初の一致からキャプチャ グループを配列として返します

: グループのキャプチャは、かっこ "(...)" で囲まれた正規表現パターンの一部です。 これにより、1 つの一致の個別の部分を個別に返すことができるようになります。

case_sensitivity

一致で大文字と小文字が区別されるかどうかを判断します。 既定では、一致では大文字と小文字が区別されます。 次のいずれかを入力します。

0: 大文字と小文字を区別する(デフォルト)

1: 大文字と小文字を区別しない

=REGEXEXTRACT("10 apples, 12 oranges","[0-9]+")  // 10
=REGEXEXTRACT("10 apples, 12 oranges","[0-9]+", 1)  // [10, 12]
=REGEXEXTRACT("09/12/1998 from James","\d{1,2}/\d{1,2}/\d{2,4}\b") // 09/12/1998
=REGEXEXTRACT("Sonia (378) 555-4195","\d{3}-\d{4}") // 555-4195
=REGEXEXTRACT("O my Luve red rose", "O my (\w+) red (\w+)") // O my Luve red rose
=REGEXEXTRACT("O my Luve red rose", "O my (\w+) red (\w+)", 2)  //["Luve", "rose"]

type=info

REGEXEXTRACT関数はExcelの実装に準拠しています。従来のSJS.REGEXEXTRACT関数は非推奨ですが、後方互換性は維持されています。主な違いは以下の通りです。

機能

REGEXEXTRACT

SJS.REGEXEXTRACT

引数の型

数値型のreturn_modecase_sensitivityを使用

=REGEXEXTRACT("aa","A",1,1)

文字列修飾子(例: "ig")を使用

=SJS.REGEXEXTRACT("aa","A","ig")

キャプチャグループ

return_mode=2で有効化

=REGEXEXTRACT("O my Luve is like a red, red rose","O my (\w+) is like a red, red (\w+)",2)

デフォルトで有効

=SJS.REGEXEXTRACT("O my Luve is like a red, red rose","O my (\w+) is like a red, red (\w+)")

全一致の抽出

return_mode=1を使用

=REGEXEXTRACT("O my Luve is like a red, red rose. O my Luve is like a red, red rose","O my (\w+) is like a red, red (\w+)",1)

"g"修飾子が必要

=SJS.REGEXEXTRACT("O my Luve is like a red, red rose. O my Luve is like a red, red rose","O my (\w+) is like a red, red (\w+)","g")

最初の一致を抽出

デフォルト動作

=REGEXEXTRACT("O my Luve is like a red, red rose. O my Luve is like a red, red rose","O my (\w+) is like a red, red (\w+)")

非対応

複数行の処理

正規表現構文が必要

=REGEXEXTRACT("aaa

aaa","^a|\na",1)

"m"修飾子をサポート

=SJS.REGEXEXTRACT("aaa

aaa", "^a","mg")

非文字列の入力

数値を変換

=REGEXEXTRACT(1234,"1")

非文字列の場合は#VALUE!を返す