替换字符串
MYS:ImageText,id=3,pageSize=4,acquiesceImg='Images/null302.gif',SeparatorTemplate=','如何替换单引号里面的字符,比如“,” --------------------编程问答-------------------- 用正则表达式抓取,存储为键值对,再替换值 --------------------编程问答-------------------- 有相关的代码吗? --------------------编程问答--------------------
SeparatorTemplate.Replace("','", "'替换符号'");--------------------编程问答-------------------- Regex.Replace(s, @"SeparatorTemplate='[^']*'", "SeparatorTemplate='替换这里'") --------------------编程问答-------------------- 你们写的很死吗 --------------------编程问答-------------------- 说这个我都会 --------------------编程问答--------------------
这个是正则啊,没写死,里面是任意字符串都可以替换
Regex.Replace(s, @"SeparatorTemplate='[^']*'", "SeparatorTemplate='替换这里'") --------------------编程问答-------------------- Regex.Replace(s, @"'[^']*'", "'替换这里'")
这个是替换所有的单引内的内容
Regex.Replace(s, @"SeparatorTemplate='[^']*'", "SeparatorTemplate='替换这里'")
这个是替换指定的单引内的内容 --------------------编程问答--------------------
要是每个单引号都有“,”,或字符串不确定情况下,这不是很死吗 --------------------编程问答-------------------- 我要替换每个单引号中的“,”,而不是单独“SeparatorTemplate=','” --------------------编程问答-------------------- LZ不多给几个说明无法理解LZ需要哪样的 --------------------编程问答-------------------- 8楼第一行满足10楼所述 --------------------编程问答--------------------
--------------------编程问答-------------------- stringBuifter,修改字符串的
string input = "<!--[MYS:ImageText,id=3,pageSize=4,acquiesceImg='Images/null302.gif',SeparatorTemplate=',']-->"
Dictionary<string, string> parameter = new Dictionary<string, string>();//参数
//获取参数字付串
string parameterStr = input.Substring(input.IndexOf(',') + 1);
parameterStr = parameterStr.Substring(0, parameterStr.IndexOf(']'));
//把参数字符串转为数组
string[] arrParameter = parameterStr.Split(',');
string key = string.Empty;//参数名
string value = string.Empty;//参数值
foreach (string p in arrParameter)
{
key = p.Trim().Substring(0, p.Trim().IndexOf('=')).Trim();
value = p.Trim().Substring(p.Trim().IndexOf('=') + 1).Trim().Replace("\'", "");
parameter.Add(key, value);
}
--------------------编程问答--------------------
--------------------编程问答-------------------- 明白我的意思了吗 --------------------编程问答-------------------- 循环遍历每个字符,记录单引号出现的次数,单次后的逗号替换,双次后的逗号不出去。 --------------------编程问答-------------------- --------------------编程问答-------------------- 用正则表达式或者Replace方法都可以。
/// <summary>
/// 获取参数
/// </summary>
/// <param name="input">匹配项的字符串</param>
/// <returns></returns>
private Dictionary<string, string> GetParameter(string input)
{
Dictionary<string, string> parameter = new Dictionary<string, string>();//参数
//获取参数字付串
string parameterStr = input.Substring(input.IndexOf(',') + 1);
parameterStr = parameterStr.Substring(0, parameterStr.IndexOf(']'));
//把参数字符串转为数组
string[] arrParameter = parameterStr.Split(',');
string key = string.Empty;//参数名
string value = string.Empty;//参数值
foreach (string p in arrParameter)
{
key = p.Trim().Substring(0, p.Trim().IndexOf('=')).Trim();
value = p.Trim().Substring(p.Trim().IndexOf('=') + 1).Trim().Replace("\'", "");
parameter.Add(key, value);
}
return parameter;
}
补充:.NET技术 , C#