-
16-09-2019 - |
题
我们有很多在我们的资源文件的字符串包含格式.e.g
“{0}已经移动到{1}”
这些字符串传递到的的String.Format()的被应用,有时译者乱了“格式标记”,所以我希望能够找到/写一个工具来检查,在所有字符串资源文件有一个有效的格式。
我知道每个密钥被传递到的String.Format使得可以送入验证以及args来编号。
因此,从检查的“{”匹配“}”与众不同的是有一个简单的方法来找到在格式字符串错误最多?
(我使用.NET,该检查当然可以进行作为生成过程的一部分)
解决方案 3
我想出了一个简单的解决方案,给出了一个合理的结果,我知道说法在格式语句的数量,但没有的参数的类型。然而,大多数参数都是字符串。
所以
if (numberOfArguments == 3)
{
try
{
String.Format(theTranslatorString, "", "", "")
}
catch
{
// tell the translator there is a problem with the string format
}
}
当然,这将不被写入一个“if”为在现实生活中的参数的每个号码。
其他提示
这听起来像一个经典单元测试场景。可以带动一个自动构建/单元测试断源代码提交触发这些?单元测试将简单地检查每个格式字符串仍然语法分析
看起来你在表达验证串,所以应使用正则表达式强> 看链接文本
不隶属于 StackOverflow