[解決済み] JavaScriptにおける負のlookbehindに相当するもの
2022-04-25 18:35:34
質問
と同等の機能を実現する方法はありますか? ネガティブルックビハインド をJavaScriptの正規表現で使うことはできますか? 特定の文字で始まらない文字列にマッチさせたいのですが。
マッチした部分が文字列の先頭にある場合に失敗せずにこれを実行する正規表現を見つけることができないようです。 ネガティブ・ルックバインドが唯一の答えのようですが、JavaScriptにはそれがありません。
これは、私が動作させたい正規表現ですが、動作しません。
(?<!([abcdefg]))m
つまり、'jim' や 'm' の 'm' にはマッチするが、'jam' にはマッチしないのである。
どのように解決するのですか?
ルックビハインドアサーション ゲット アクセプト に入っています。 ECMAScript仕様 を2018年に発表しました。
ポジティブなlookbehindの使い方。
console.log(
"$9.99 €8.47".match(/(?<=\$)\d+\.\d*/) // Matches "9.99"
);
ネガティブなlookbehindの使い方。
console.log(
"$9.99 €8.47".match(/(?<!\$)\d+\.\d*/) // Matches "8.47"
);
プラットフォーム対応。
-
✔️
V8
- ✔️ グーグルクローム62.0
- ✔️ Microsoft Edge 79.0
- ✔️ Node.js 6.0は旗の後ろ、9.0は旗なし
- ✔️ Deno (すべてのバージョン)
- ✔️ スパイダーモンキー
-
?️JavaScriptCoreです。
Appleが取り組んでいる
- ?️アップルサファリ
- ?️ iOS WebView (iOS + iPadOS のすべてのブラウザ)
-
❌チャクラ。
マイクロソフトが取り組んでいた
しかし、Chakraは現在V8に移行して放棄されています。
- インターネットエクスプローラー
- 79 より前の Edge バージョン(EdgeHTML+Chakra をベースとしたもの)
関連
-
jsを使った簡単な照明スイッチのコード
-
[解決済み】エラー。Ionic使用中にモジュール '../lib/utils/unsupported.js' が見つかりませんでした。
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] あるJavaScriptファイルを他のJavaScriptファイルにインクルードするにはどうすればよいですか?
-
[解決済み] JavaScriptでメールアドレスを検証するのに最適な方法は何ですか?
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み】JavaScriptの比較では、どちらの等号演算子(== vs ===)を使うべきですか?
-
[解決済み】オブジェクトからプロパティを削除する(JavaScript)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
vue3レスポンシブ対応のためのsetup+ref+reactive
-
親子コンポーネント通信を解決する3つのVueスロット
-
vueネットワークリクエストソリューション ネイティブネットワークリクエストとjsネットワークリクエストライブラリ
-
JavaScriptにおけるマクロタスクとミクロタスクの詳細
-
vueの補間表現とv-textディレクティブの違いについて
-
Vueのクラススタイルの使い方の詳細
-
[解決済み】JavaScript TypeError: null のプロパティ 'style' を読み取ることができない
-
[解決済み】React-Redux: アクションはプレーンオブジェクトでなければならない。非同期アクションにはカスタムミドルウェアを使用する
-
[解決済み】ReactJSでエラー発生 Uncaught TypeError: Super expression は null か関数でなければならず、undefined ではありません。
-
フロントエンド非同期(アシンク)ソリューション(全ソリューション)