I need to delete a substring in a string. I need to remove a string starting from a particular character until another character. This is my code:
[Test]
public static void TestDeleteSign()
{
var s = "РасчНал[]{@ТипНП}/РасчНалГруп[]{@СубРФ}/@ДоляНалБаз";
var result = DeleteSignature(s);
var acceptResult = "РасчНал/РасчНалГруп/@ДоляНалБаз";
Assert.AreEqual(acceptResult, result);
}
public static string DeleteSignature(string s)
{
if (s.Contains("[]{"))
{
var firstEntry = s.IndexOf("[]{");
var closeEntry = s.IndexOf('}');
s = s.Remove(firstEntry, closeEntry - firstEntry + 1);
DeleteSignature(s);
}
return s;
}
The result is:
Expected: "РасчНал/РасчНалГруп/@ДоляНалБаз"
But was: "РасчНал/РасчНалГруп[]{@СубРФ}/@ДоляНалБаз"
DeleteSignature(s);isn't going to do anything useful, because you're not using the return value...s = DeleteSignature(s);