[解決済み] 条件を満たしたときにカンマをマッチさせるREGEX
2022-02-25 03:34:04
質問
現在、いくつかの条件においてカンマのマッチングに問題があります。
例えば
<product_11,product_12>=5,product_1,product_2,product_3=1,product_9=3,<product_5,product_6>=10,product_11,product_12,product_13,product_14=20
があるときに、そのコンマにマッチしたくないのです。
=\d+
で、内部は
<>
この場合、マッチングさせたいカンマは
product_1,product_2,product_3
と
product_11,product_12,product_13,product_14=20
.
実は、このコードはすでにやっていて、問題なく動作するのですが、やはりECMAScript 2018対応環境のみで、Mozillaやieなどのブラウザには対応していないようです
以下は私の正規表現コードです。
(?<!\s*[=]\s*\d+)\,\s?(?![^\<]*\>)
https://regex101.com/r/lS5tT3/231
私が期待するコンマに一致する他のオプションはありますか?
一致するカンマを次のように置き換えたい。
/
という出力になります。
<product_11,product_12>=5,product_1/product_2/product_3=1,product_9=3,<product_5,product_6>=10,product_11/product_12/product_13/product_14=20
解決方法は?
を使用することができます。 オルタネート のコールバック関数と 置換 .
alternationでは、必要なものと不要なものをマッチングさせることができます。置換機能では、マッチしたものが単一のカンマであるかどうかをチェックし、それをフォワードスラッシュに置き換えることができます。
<[^<>]+>|=\d+,|,
例えば
let pattern = /<[^<>]+>|=\d+,|,/g;
let str = `<product_11,product_12>=5,product_1,product_2,product_3=1,product_9=3,<product_5,product_6>=10,product_11,product_12,product_13,product_14=20`;
str = str.replace(pattern, function($m) {
return $m === "," ? '/' : $m;
});
console.log(str);
関連
-
[解決済み】JS ファイルが net::ERR_ABORTED 404 (Not Found) を取得する)
-
[解決済み】Babel NodeJS ES6: SyntaxError: 予期しないトークンのエクスポート
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] JavaScriptで二重引用符と単一引用符はいつ使うべきですか?
-
[解決済み] XHTMLの自己完結型タグを除くオープンタグにマッチするRegEx
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] grepによるネガティブマッチング(fooを含まない行にマッチする)
-
[解決済み] 数字のみの正規表現
-
[解決済み】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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】このエラーの原因は何ですか - "Fatal error: ローカルgruntを見つけることができません"
-
[解決済み】React Js: Uncaught (in promise) SyntaxError: 位置 0 の JSON で予期しないトークン < が発生しました。
-
[解決済み】JavaScriptのinnerHTMLで要素が更新されない
-
[解決済み】「Uncaught TypeError: Chromeで "Illegal invocation "が発生する。
-
[解決済み] React with ES7: Uncaught TypeError: Cannot read property 'state' of undefined [duplicate] (未定義のプロパティ'state'を読み込むことはできません。
-
[解決済み】getElementByIdはnullを返す?[クローズド]
-
[解決済み] ローカルファイルを開くことができません - Chrome: ローカルリソースのロードが許可されていません
-
[解決済み】React-Routerの子が1つしかない。
-
[解決済み】Uncaught ReferenceError。Firebase は定義されていません。
-
[解決済み】'useState' が定義されていない no-undef React