第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用于替換 JavaScript 模式的正則表達(dá)式

用于替換 JavaScript 模式的正則表達(dá)式

BIG陽 2022-12-28 10:01:50
我有大量帶有這樣表達(dá)式的 html 文件:eval('enterData.style.pixelTop=' + y);我想消除 eval 表達(dá)式并只執(zhí)行代碼,換句話說,將其更改為:enterData.style.pixelTop =  y;誰能幫我解決這個問題。我正在努力尋找解決方案,但我只知道如何通過以下方式消除評估:Regex: eval\('(.*)'\) Replace: $1我將 java 用于正則表達(dá)式。
查看完整描述

2 回答

?
holdtom

TA貢獻(xiàn)1805條經(jīng)驗 獲得超10個贊

我對 Javascript 一無所知,但這就是我所看到的。

您需要轉(zhuǎn)義您的'角色并將它們放在不匹配的組中:?

Regex: eval\(((?:\')(.*)(?:\').*)\)
Replace: $1

查看regex101以制作正則表達(dá)式的原型。


查看完整回答
反對 回復(fù) 2022-12-28
?
素胚勾勒不出你

TA貢獻(xiàn)1827條經(jīng)驗 獲得超9個贊

我猜我們可以vars使用如下表達(dá)式分別捕獲所需的兩個:


.+'(.+?)'\s+?[+\-*]+\s+([a-z]+).+

我們當(dāng)然可以簡化這個表達(dá)式,但我不確定我們可能擁有的其他輸入。


爪哇

import java.util.regex.Matcher;

import java.util.regex.Pattern;


final String regex = ".+'(.+?)'\\s+?[+\\-*]+\\s+([a-z]+).+";

final String string = "eval('enterData.style.pixelTop=' + y);\n"

     + "eval('enterData.style.pixelTop=' + x);";

final String subst = "$1$2;";


final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);

final Matcher matcher = pattern.matcher(string);


// The substituted value will be contained in the result variable

final String result = matcher.replaceAll(subst);


System.out.println(result);

測試

const regex = /.+'(.+?)'\s+?[+\-*]+\s+([a-z]+).+/gm;

const str = `eval('enterData.style.pixelTop=' + y);

eval('enterData.style.pixelTop=' + x);`;

const subst = `$1$2;`;


// The substituted value will be contained in the result variable

const result = str.replace(regex, subst);


console.log(result);

演示

正則表達(dá)式

如果不需要此表達(dá)式,可以在regex101.com中對其進(jìn)行修改/更改。

正則表達(dá)式電路

jex.im可視化正則表達(dá)式:

http://img1.sycdn.imooc.com//63aba3be00014bba14800185.jpg

查看完整回答
反對 回復(fù) 2022-12-28
  • 2 回答
  • 0 關(guān)注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號