我有一个带有静态数字的 QString 模板,混合了参数/模板占位符,如 %1 和 %2。例如:
QString("123%1%26789").arg("4").arg("6")
%1 应该替换为 4,%2 应该替换为 5。但是第二个占位符混淆了 C++/Qt,因为占位符不能将 %2 与相邻的 6 分开。
我试过 %{2} 和其他愚蠢的东西,但没有运气。有没有办法在不创建两个语句的情况下实现这一点,在第二个语句中附加字符串的其余部分:
QString("123%1%2").arg("4").arg("6")+QString("6789")
QString("123%1%%2%789").arg("4").arg("6")
这里,第一个占位符(%1)将被替换为“4”,第二个占位符(%2)将被替换为“6”。它们之间的 %% 将被解释为文字百分号,不会被替换。
这将导致 QString“1234%6789”,它具有所需的替换。