このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。
ワイルドカード: .
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
ワイルドカードは改行文字を除くすべての文字に一致します。s フラグが設定された場合は、改行文字にも一致します。
In this article
構文
.解説
. は改行文字を除くあらゆる文字に一致します。s フラグが設定された場合、. は改行文字にも一致します。
. に一致する正確な文字の集合は、正規用言がUnicode 対応モードであるかによります。Unicode 対応モードでは、. はあらゆる Unicode コードポイントに一致します。それ以外の場合は、あらゆる UTF-16 コード単位に一致します。例えば次のようになります。
/../.test("😄"); // true。サロゲートペアとして 2 つの UTF-16 コード単位に一致します。/../u.test("😄"); // false。1 つの Unicode 文字しかありません。例
>数量詞の使用
ワイルドカードはしばしば数量詞と共に使用され、次に関心がある文字が得られるまで、任意の文字列に一致します。 例えば、次の例では Markdown ページのタイトルを# Title という形で抽出します。
function parseTitle(entry) { // タイトルがファイルの始めにはない可能性があるので、複数行モードを使用する。 // m フラグは . を行末に一致させないので、タイトルは単一の行になければ // ならないことに注意する // 最初のキャプチャグループに一致したテキストを返す。 return /^#[ \t]+(.+)$/m.exec(entry)?.[1];}parseTitle("# Hello world"); // "Hello world"parseTitle("## Subsection"); // undefinedparseTitle(`---slug: Web/JavaScript/Reference/Regular_expressions/Wildcard---# Wildcard: .A **wildcard** matches all characters except line terminators.`); // "Wildcard: ."コードブロックのコンテンツの照合
次の例は Markdown の 3 つのバックスティックで囲まれたコードブロックの内容に一致します。コードブロックの内容が複数行にまたがる可能性があるため、. を改行と一致させるためにs フラグを使用しています。
function parseCodeBlock(entry) { return /^```.*?^(.+?)\n```/ms.exec(entry)?.[1];}parseCodeBlock(`\`\`\`jsconsole.log("Hello world");\`\`\``); // "console.log("Hello world");"parseCodeBlock(`A \`try...catch\` statement must have the blocks enclosed in curly braces.\`\`\`js-nolint example-badtry doSomething();catch (e) console.log(e);\`\`\``); // "try\n doSomething();\ncatch (e)\n console.log(e);"警告:この例はあくまでデモンストレーションのためのものです。 Markdown を解析したい場合は、考慮すべきエッジケースがたくさんあるため、専用の Markdown パーサーを使用してください。
仕様書
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # prod-Atom> |