プレゼンテーションシナリオ: スライド148、149
スライド148と149では、JavaScriptの最後の部分であるRegExp(正規表現)について説明します。
Regexとは?
Regex = Regular Expression = 正規表現。テキスト文字列の検索、チェック、または置換に使用されます。
記述方法:
/pattern/flags
new RegExp("pattern", "flags")
よく使用されるフラグ
g→ すべての結果を検索(global)。i→ 大文字小文字を区別しない(ignore case)。m→ 複数行で正規表現を動作させる(multi-line)。s→.が改行文字にも一致できるようにする。u→ Unicodeをサポート。
よく見かける特殊文字
.→ 任意の文字に一致(改行を除く)。\d→ 数字に一致(0–9)。\w→ 文字 + 数字 + アンダースコアに一致。[a-z]→ 小文字a → zに一致。[^0-9]→ 数字以外の文字に一致。
文字列内の位置(アサーション)
^→ 文字列の開始。$→ 文字列の終了。\b→ 単語の境界(word boundary)。(?=...)→ 先読み(Lookahead): 現在位置の直後がパターンに一致するかチェック。(?<=...)→ 後読み(Lookbehind): 現在位置の直前がパターンに一致するかチェック。
例1: 文字列にキーワードが含まれているかチェック
let text = "I love JavaScript!";
let pattern = /JavaScript/;
console.log(pattern.test(text));
// true
test()は文字列が正規表現に一致するかチェックするために使用します。- 正規表現
/JavaScript/は"JavaScript"という単語を検索します。 - 文字列にその単語があるため、結果はtrueです。
例2: フラグgを使用して文字列内のすべての数字を検索
let text = "My phone is 12345 and my code is 6789";
let pattern = /\d+/g;
console.log(text.match(pattern));
// ["12345", "6789"]
\d+→ 連続する1つ以上の数字を検索。- フラグ
g→ 最初の結果だけでなく、すべての結果を検索。 match()は配列["12345", "6789"]を返します。
以上で、JavaScriptの最後の部分であるRegExpについての説明を終わります。これは文字列処理とJavaScriptでのパターン検索のための強力なツールです。
🎉 JavaScriptコースの全30グループのスライドを完了しました!