删除字符串中的双反斜杠

时间:2020-05-03 08:05:01

标签: c# php

嗨,在使用c#parse解析文件后,我们得到的json包含一个"SOUTH MOTOR COMPANY C\\O CALDWELL AND KERR"字符串,而原始文件仅包含一个斜杠

我们正在尝试使用c#或php删除多余的反斜杠,但无法这样做。来自开发人员的任何帮助

2 个答案:

答案 0 :(得分:0)

在C#中:

string RemoveDuplicateBackslashes(string theString)
{
    while (theString.Contains(@"\\"))
        theString = theString.Replace(@"\\", @"\");
    return theString;
}

在PHP中:

function removeDuplicateBackslashes($theString)
{
    while (strpos($theString, "\\\\") !== false)
        $theString = str_replace("\\\\", "\\", $theString);
    return $theString;
}

答案 1 :(得分:0)

如果遇到任何数量的冲突,可以使用Regex.Replace方法:

public string ReplaceSlashes(string source) 
{
    var pattern = @"\\+";

    return Regex.Replace(source, pattern, @"\");
}

结果是:

ReplaceSlashes(@"SOUTH MOTOR COMPANY C\O CALDWELL AND KERR"); // SOUTH MOTOR COMPANY C\O CALDWELL AND KERR
ReplaceSlashes(@"SOUTH MOTOR COMPANY C\\O CALDWELL AND KERR"); // SOUTH MOTOR COMPANY C\O CALDWELL AND KERR
ReplaceSlashes(@"SOUTH MOTOR COMPANY C\\\\\\\\O CALDWELL AND KERR"); // SOUTH MOTOR COMPANY C\O CALDWELL AND KERR