如何删除字符串末尾的反斜杠?

时间:2020-10-28 17:13:47

标签: javascript php regex

我正在遍历node.js中的Discord公会名称列表,以生成一个包含以下格式数组的php文件

<?php

$guildLookup = array( "164930842483761" => "guildName1",
"56334196291325" => "guildName2",
);

?>

下面是一个公会名称

/ ? text ? \

因此,当我将其插入php数组时,它看起来像

<?php

$guildLookup = array( "164930842483761" => "guildName1",
"56334196291325" => "guildName2",
"56334196291342" => "/    ? text ?   \",
"56334196291135" => "guildName4",
);

?>

在尝试访问php数组时会产生以下错误。

PHP Parse error: syntax error, unexpected '487648187306475542' (T_LNUMBER), expecting ')'

大概是因为反斜杠在行尾转义了“。

我在node.js中尝试了以下几种变体,以逃避行会名称末尾的反斜杠,甚至在将其放入php文件之前将其删除,但似乎无法使其正常工作。感谢任何我可以尝试的建议。

var newString = orginalString.replace(/\\$/, '\\');

1 个答案:

答案 0 :(得分:0)

'\\'的意思是\,必须替换为4 \\\\,即两个转义的\

//Use 4 backslashes for \\
//Also remove the $ because escaped characters can be anywhere
var newString = orginalString.replace(/\\/, '\\\\');

另外,我建议您验证报价。

var newString = orginalString.replace(/'/, "\\'");