[解決済み] ユーザー入力文字列を正規表現に変換する
2022-03-24 09:37:09
質問
HTMLとJavaScriptで正規表現のテスターを設計しています。ユーザーは正規表現、文字列を入力し、ラジオボタンでテストしたい関数(検索、一致、置換など)を選択し、その関数が指定された引数で実行されたときの結果を表示するプログラムです。当然ながら、置換などの追加引数のためのテキストボックスも用意されます。
私の問題は、ユーザーから文字列を受け取り、それを正規表現にすることです。もし、私が、彼らには
//
のようなフラグを設定することができません。
g
と
i
. そのため、それらは
//
しかし、この文字列を正規表現に変換するにはどうしたらよいのでしょうか?文字列なのでリテラルにすることはできませんし、RegExp コンストラクタに渡すこともできません。
//
's. ユーザが入力した文字列を正規表現にする他の方法はないのでしょうか?文字列を解析して、正規表現のフラグを
//
を使用し、別の方法で構築するのでしょうか?文字列を入力させ、フラグを別に入力させるべきでしょうか?
どのように解決するのですか?
を使用します。 RegExp オブジェクトのコンストラクタ を使って、文字列から正規表現を作成します。
var re = new RegExp("a|b", "i");
// same as
var re = /a|b/i;
関連
-
Vueにシンプルなメモ帳機能を実装
-
[解決済み】SyntaxError: JSONの位置1に予期しないトークンoがある。
-
[解決済み】エラー。Ionic使用中にモジュール '../lib/utils/unsupported.js' が見つかりませんでした。
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] 有効な正規表現を検出するための正規表現はありますか?
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】MySQLで正規表現による置換を行うには?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
親子コンポーネント通信を解決する3つのVueスロット
-
vue for 登録ページ効果 vue for sms 認証コードログイン
-
vueディレクティブv-bindの使用と注意点
-
VUEグローバルフィルターの概念と留意点、基本的な使い方
-
[解決済み】Uncaught SyntaxError: JSONの位置0に予期しないトークンuがあります。
-
[解決済み】ERROR エラーです。スイッチのname属性が指定されていないフォームコントロールの値アクセッサがない
-
[解決済み】JavaScriptでインラインIF文の書き方は?
-
[解決済み】 Uncaught TypeError : undefined のプロパティ 'replace' を読み取れない In Grid
-
JavaScriptのgetElementById、getElementsByTagNam、getElementsByClassNameの違いと使い方
-
jq は html ページとデータを動的に分割する。