我有一个字符串var str1 = "My name is , I am
我想使用String.Format(str1, 'Pavel', 29)
years old."String.Format()
;
当然它不起作用,因为for (int i = 0; i < 10; i++)
{
str1 = str1.Replace("{{" + i + "}}", "{" + i + "}");
}
期望参数占位符在一个大括号中
所以,我必须修改我的字符串:
<script>
function random(n) {
return ((Math.floor(Math.random() * Math.floor(n)))+1);
}
var x = random(5000)+2000;
</script>
我想知道是否有更好的方法吗?有没有办法可以定义参数占位符的格式?
答案 0 :(得分:1)
有没有办法可以定义参数占位符的格式?
没有
我想知道是否有更好的方法呢?
您唯一的选择是制作与string.Format
兼容的格式字符串。这就是你现在所做的。如果可以,请修复这些格式字符串的来源。
如果无法做到这一点,我会选择使用正则表达式来使其更强大,性能更佳。
您应使用的表达式为{{(\d+)}}
,可以用{$1}
替换。在行动here中查看。