Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的反斜杠错误_Javascript_Arrays_Multidimensional Array - Fatal编程技术网

JavaScript中的反斜杠错误

JavaScript中的反斜杠错误,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我有一个包含复杂\\字符的字符串 下面是最初的代码,我正试图实现它,但它不起作用。我必须替换\字符,但我认为这就是错误所在 var current=csvArray[0][i]。替换\,替换为 我已经尝试了下面的变化,但它仍然不工作 var current=csvArray[0][i]。替换“\” 它当前正在抛出一个未捕获的TypeError:csvArray[0][i]。Replace不是函数 Javascript有没有一种方法可以像在C中那样直接获取我的字符串?请帮我调查一下。谢谢 如果要匹

我有一个包含复杂\\字符的字符串

下面是最初的代码,我正试图实现它,但它不起作用。我必须替换\字符,但我认为这就是错误所在

var current=csvArray[0][i]。替换\,替换为

我已经尝试了下面的变化,但它仍然不工作

var current=csvArray[0][i]。替换“\”

它当前正在抛出一个未捕获的TypeError:csvArray[0][i]。Replace不是函数


Javascript有没有一种方法可以像在C中那样直接获取我的字符串?请帮我调查一下。谢谢

如果要匹配的序列是一个后跟引号的反斜杠字符,则需要对反斜杠本身进行转义,因为反斜杠在字符串文字中具有特殊意义。然后,您需要使用引号自己的反斜杠分别对其进行转义:

.replace("\\\"", "")
我相信在C中也是如此

或者,您可以通过在字符串周围使用单引号来简化它,以便只需要转义反斜杠:

.replace('\\"', '')
但是,如果.replace的第一个参数是字符串,它将只替换第一次出现的参数。要进行全局替换,必须使用带有g标志的正则表达式,注意正则表达式中也需要转义反斜杠:

.replace(/\\"/g, '')
我不会设置与代码完全匹配的演示数组,但这里有一个简单的演示,您可以看到输入字符串中的单个反斜杠或引号不会被替换,但所有反斜杠引号组合都会被替换:

变量输入='Some\\test\\text\\for demo\\' var output=input.replace/\\\/g, console.loginput
console.LOGOUTPUT您收到的错误是因为.replace应该以小写的r开头。你是真的在尝试替换反斜杠,还是仅仅替换引号?当JS引擎告诉你你试图执行的方法不存在时,你为什么要搞乱参数?O.您的错误表明Replace不是一个函数,这意味着使用Replace second使用Replace\\\之类的转义序列来替换slash@nnnnnn哦,我的错。这最初是我的C代码。我现在正在把它转换成JS。顺便说一句,我试图替换一个反斜杠和一个开头引号\@我要替换的不仅仅是反斜杠。转义序列无法在正则表达式上使用g标志进行全局替换。第一次出现的想法是否也适用于.split','?如果是这样的话,我还必须使它全球化?不,“a,b,c,d”。split',将返回['a','b','c','d']。如果需要执行更复杂的操作,可以指定一个要拆分的正则表达式,但不需要g global标志,因为…好吧,因为这就是.split的工作方式。您好,如果我的字符串包含在标记中,该怎么办?我怎样才能去掉这些?我一直得到1.2345,而不仅仅是数字..正则表达式处理字符串。您可以提取一个数字序列,但它仍然是一个字符串。您可以将一串数字更改为数字为1.2345的实际数字。如果这不是您的意思,您可能需要发布另一个问题,其中包含输入字符串的完整详细信息。