タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

TypeScriptとRegExpに関するefclのブックマーク (2)

  • TypeScript 5.5 で追加された正規表現構文チェックを理解する

    TypeScript 5.5で、@graphemeclusterさんによって正規表現リテラルの構文チェックが導入されました🎉 この構文チェックによって、正規表現に間違いがあった場合、事前にTypeScriptがエラーを出力してくれます。 この機能について、次のことが気になったので調べてみました。 どんな構文がエラーになるか なぜ導入されたか どうやってチェックしているか JavaScriptで実行できるがTypeScriptでエラーになる構文はあるか ESLintとのカバー範囲の違い 記事に関して、誤り等があれば指摘いただけると嬉しいです。 どんな構文がエラーになるか TypeScript 5.5では、正規表現に関するエラーメッセージが40個程度追加されています。 例えば、下記のような構文は、5.5でエラーになります。 // 存在しないフラグ var re = /a/b; // エラー

    TypeScript 5.5 で追加された正規表現構文チェックを理解する
    efcl
    efcl 2024/06/22
    TypeScript 5.5で実装された正規表現の構文チェックについて
  • TypeScriptの正規表現にマシな型をつける - Qiita

    let str = "x\\yz"; let t = str.replace(/\\(.)/, (m, s) => s.toUpperCase()); // s は any 型なので、仮に s.toUpper() と書いてもエラーにならない TypeScript は静的型がウリの言語なので、もうちょっとやりようはあるのではないか。 目標:型付き正規表現 これらの問題を解決するために、キャプチャーの型の情報を埋め込んだ型 TypedRegExp<captures> を作りたい。キャプチャーの型とは、具体的には string: 通常のキャプチャー string | undefined: 後ろに ? や * がついたもの、あるいは | の一方に含まれるもの undefined: 否定先読み (?! .. ) に含まれるキャプチャー のいずれかである。例えば、 /(a)(b)?/ という正規表現の

    TypeScriptの正規表現にマシな型をつける - Qiita
    efcl
    efcl 2017/09/23
    TypeScriptに正規表現に型を漬ける
  • 1