为了翻译目的,用嵌入的 HTML 拆分字符串
Break up a string with HTML embedded in for translations purpose
我在 .NET Framework 项目和我的 C# 代码中得到如下值:
object.value = "In total <B>85</B> courses.<br/><ul><li><B>13</B> have been started</li><li><B>42</B> have not been started</li><li><B>30</B> have been completed"
我应该根据语言翻译文本,在上面的例子中:
- 总计
- 课程
- 已开始
- 还没有开始
- 已完成
并维护数字和 HTML。
结果我想要完全相同的布局,但文本已翻译。
我打算尝试这样的事情:
var headers = $"{0} <B>{1}</B> {2}.<br/><ul><li><B>{3}</B> {4}</li><li><B>{5}</B> {6}</li><li><B>{7}</B> {8}";
但我不确定如何正确创建数组。
有什么建议吗?
谢谢
也许是这样的?
var str = "In total <B>85</B> courses.<br/><ul><li><B>13</B> have been started</li>" +
"<li><B>42</B> have not been started</li><li><B>30</B> have been completed";
var parts = Regex.Split(str, @"<[A-Za-z\/]+>").Where(x => !string.IsNullOrEmpty(x));
foreach(var p in parts)
str = str.Replace(p, MyTranslateMethod(p));
我在 .NET Framework 项目和我的 C# 代码中得到如下值:
object.value = "In total <B>85</B> courses.<br/><ul><li><B>13</B> have been started</li><li><B>42</B> have not been started</li><li><B>30</B> have been completed"
我应该根据语言翻译文本,在上面的例子中:
- 总计
- 课程
- 已开始
- 还没有开始
- 已完成
并维护数字和 HTML。 结果我想要完全相同的布局,但文本已翻译。
我打算尝试这样的事情:
var headers = $"{0} <B>{1}</B> {2}.<br/><ul><li><B>{3}</B> {4}</li><li><B>{5}</B> {6}</li><li><B>{7}</B> {8}";
但我不确定如何正确创建数组。
有什么建议吗? 谢谢
也许是这样的?
var str = "In total <B>85</B> courses.<br/><ul><li><B>13</B> have been started</li>" +
"<li><B>42</B> have not been started</li><li><B>30</B> have been completed";
var parts = Regex.Split(str, @"<[A-Za-z\/]+>").Where(x => !string.IsNullOrEmpty(x));
foreach(var p in parts)
str = str.Replace(p, MyTranslateMethod(p));