我想用希伯来语字符串替换这个占位符。
但不幸的是字符串替换不起作用。看起来在希伯来语字符串中根本找不到占位符字符串。
[Test]
public void Fancy_placeholder_should_be_replaced()
{
const string input = "(השדה @%1$ קצר מדי (@%2$ תווים לפחות";
const string expected = "(השדה {0} קצר מדי ({1} תווים לפחות";
var dummy = input.Replace("%2$@", "{1}");
dummy = dummy.Replace("%1$@", "{0}");
Assert.AreEqual(expected, dummy);
}
我怎样才能在这里进行替换工作?
正是从右到左的问题弄乱了结果,具体来说,是“@”字符。
将您的函数修改为:
public void Fancy_placeholder_should_be_replaced()
{
const string input = "(השדה @%1$ קצר מדי (@%2$ תווים לפחות";
const string expected = "(השדה {0} קצר מדי ({1} תווים לפחות";
var formatted = input.Replace("@%2$", "{1}");
formatted = formatted.Replace("@%1$", "{0}");
bool same2 = expected == formatted;
Assert.AreEqual(expected, formatted);
}
还有田田!有用...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)