正規表現でマッチした部分を取得する
// ── 基本: 正規表現でマッチした部分を取得する ─────────────
const text = '電話: 090-1234-5678 または 03-9876-5432';
// g フラグなし: 最初にマッチしたものだけ(結果は配列)
const first = text.match(/d+-d+-d+/);
console.log(first?.[0]); // '090-1234-5678'
// g フラグあり: 全てのマッチを配列で返す
const all = text.match(/d+-d+-d+/g);
console.log(all); // ['090-1234-5678', '03-9876-5432']
// ── キャプチャグループ(括弧で囲んだ部分を個別取得)──
const date = '2024-04-15';
const parts = date.match(/(d{4})-(d{2})-(d{2})/);
if (parts) {
console.log(parts[0]); // '2024-04-15' ← マッチ全体
console.log(parts[1]); // '2024' ← 1つ目の括弧
console.log(parts[2]); // '04' ← 2つ目の括弧
console.log(parts[3]); // '15' ← 3つ目の括弧
}matchAllはイテレータを返すので配列に変換して使う([...str.matchAll(...)])。