gpt4 book ai didi

javascript - 用特殊字符和空格替换js代码行

转载 作者:太空宇宙 更新时间:2023-11-04 16:18:24 25 4
gpt4 key购买 nike

我在文本区域和连续的 div 中有几行文本,代表这些行。我正在尝试重新排序 div 并相应地重新排序文本行。

Div 与数组中文本行的索引具有相同的 id。

现在我坚持删除行。如果是简单的文本,可以删除行。但就我而言,这是一段 js 代码。但由于某种原因它不起作用。

工作代码http://codepen.io/one2gov/pen/eBGqBR?editors=1111 (降低selectedDivNumber进行检查)

var selectedDivNumber = 2;
var linesArray = ["line0;", "line1;", "tl.to(abstract_m, 13, {x:'1327', y:'117', autoAlpha:1, delay:4}, 'num_sound');"];
var arrayNumber = linesArray[selectedDivNumber];

textArea = $("#fname").val();
textArea = textArea.split(';');

arrayNumber = new RegExp(arrayNumber,'g');
$("#fname").html($("#fname").html().replace(arrayNumber, "something else;"));

我尝试在 .replace 变量 arrayNumber 中使用,现在我将其转换为新的 RegExp,但没有成功。

最佳答案

您尝试替换的字符串由于 {( 等特殊字符而破坏了正则表达式。

我为此使用了 RegExp 转义函数:

RegExp.escape= function(s) {
return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); //replace special characters so RegExp won't break
};

//tl.to(abstract_m, 13, {x:'1327', y:'117', autoAlpha:1, delay:4}, 'num_sound');

var selectedDivNumber = 2;
var linesArray = ["line0;", "line1;", "tl.to(abstract_m, 13, {x:'1327', y:'117', autoAlpha:1, delay:4}, 'num_sound');"];
var arrayNumber = linesArray[selectedDivNumber];

textArea = $("#fname").val();
textArea = textArea.split(';');

arrayNumber = new RegExp(RegExp.escape(arrayNumber),'g'); //escape with RegExp.escape
$("#fname").html($("#fname").html().replace(arrayNumber, "something else;"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id = "fname" = rows="4" cols="50">
line0;
line1;
tl.to(abstract_m, 13, {x:'1327', y:'117', autoAlpha:1, delay:4}, 'num_sound');
</textarea>

关于javascript - 用特殊字符和空格替换js代码行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40873397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com