Index: DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs
===================================================================
diff -u -r1974 -r2185
--- DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs (.../XmlAdapter.cs) (revision 1974)
+++ DamEngine/trunk/src/Deltares.DamEngine.TestHelpers/XmlAdapter.cs (.../XmlAdapter.cs) (revision 2185)
@@ -20,6 +20,7 @@
// All rights reserved.
using System;
+using System.Text.RegularExpressions;
namespace Deltares.DamEngine.TestHelpers
{
@@ -29,7 +30,7 @@
public class XmlAdapter
{
///
- /// Changes the value in XML.
+ /// Changes in an XML the value of all elements with the specified key to the specified value.
///
/// The input.
/// The key.
@@ -38,18 +39,9 @@
public static string ChangeValueInXml(string input, string key, string value)
{
string result = input;
- string searchString = key + "=\"";
- var startIndex = input.IndexOf(searchString, StringComparison.Ordinal);
- var length = searchString.Length;
- if (startIndex != -1)
- {
- // find next double quote
- var endIndex = input.Substring(startIndex + length).IndexOf("\"", StringComparison.Ordinal);
- string dirString = input.Substring(startIndex + length, endIndex);
- string pattern = searchString + dirString;
- string replacement = searchString + value;
- result = input.Replace(pattern, replacement);
- }
+ string searchString = key + "=\"" + ".+" + "\"";
+ string replacement = key + "=\"" + value + "\"";
+ result = Regex.Replace(input, searchString, replacement, RegexOptions.IgnorePatternWhitespace);
return result;
}
}