替换占位符我有这样一个URL的一部分:为了
/home/{value1}/something/{anotherValue}
现在我想从一个字符串数组值替换所有的括号内。
我试过这个RegEx模式:\{[a-zA-Z_]\}
但它不起作用。
后来(在C#中)我想用第一个数组的第一个值替换第一个匹配,第二个替换第二个。
更新:/不能用于分隔。只有占位符{...}应该被替换。
示例:/家庭/前{VALUE1} /和/ {anotherValue}
字符串数组:{ “标记”, “1”}
结果:/家庭/ beforeTag /和/ 1
我希望它可以是这样的:
string input = @"/home/before{value1}/and/{anotherValue}";
string pattern = @"\{[a-zA-Z_]\}";
string[] values = {"Tag", "1"};
MatchCollection mc = Regex.Match(input, pattern);
for(int i, ...)
{
mc.Replace(values[i];
}
string result = mc.GetResult;
编辑: 谢谢德文德拉·查万D.和ipr101,
两种解决方案都是非常重要的!
为什么正则表达式?难道你不能只是将字符串拆分为'/'并使用索引1和3? –
你有代码示例和“之前”和“之后”字符串使问题更清晰吗? – CodeCaster
使用该模式,在你的例子中'{[a-zA-Z0-1] *}'或'{\ w *}'会给出想要的结果。 –