有一个控件里的值比如说为: ,11,12,13,50,80,120,122
我想替换里面的,12为空,但不想让其他像120和122的也跟着被替换
该怎么写,只替换我指定的字符串?
var str=",11,12,13,50,80,120,122";
var fstr=",12";
var reg=new RegExp(fstr+"(?!\d)","g");
str=str.replace(reg,"");
这样写好像不行,该怎么写啊?
我想替换里面的,12为空,但不想让其他像120和122的也跟着被替换
该怎么写,只替换我指定的字符串?
var str=",11,12,13,50,80,120,122";
var fstr=",12";
var reg=new RegExp(fstr+"(?!\d)","g");
str=str.replace(reg,"");
这样写好像不行,该怎么写啊?
这样变一下就可以了
最好是用这个
这个替换成一个,就可以了
var str=",11,12,13,50,80,120,122";
var fstr=",12,";
var reg=new RegExp(fstr+"(?!\d)","g");
str=str.replace(reg,"");
就不行了。这个fstr和str都是不固定的。
用点点技巧就行了,正则就不用了:str=",11,13,50,80,120,122,12";
var fstr=",12,";
str=str+",";
str=str.replace(str,fstr,"");
str=str.Substring(0,s.Length-1);
var fstr=",12,";
//前面加逗号
if (str.Substring(0,1)!=",") str=","+str;
//后面加逗号
if (str.Substring(str.Length-1,1)!=",") str=str+",";
str=str.replace(str,fstr,"");
//去掉最后一个逗号
if (str.Substring(str.Length-1,1)==",") str=str.Substring(0,s.Length-1);
str=",11,13,50,80,120,122,12";
var fstr="12";
string newstr=getstr(str,fstr);private string getstr(string str,string fstr)
{
//前面加逗号
if (fstr.Substring(0,1)!=",") fstr=","+fstr;
//后面加逗号
if (fstr.Substring(fstr.Length-1,1)!=",") fstr=fstr+",";//前面加逗号
if (str.Substring(0,1)!=",") str=","+str;
//后面加逗号
if (str.Substring(str.Length-1,1)!=",") str=str+",";
str=str.replace(str,fstr,"");
//去掉最后一个逗号
if (str.Substring(str.Length-1,1)==",") str=str.Substring(0,s.Length-1);retrun str;
}
string str = "12,12,12,12,1234512,12";
string compare = "12";
string[] results = str.Split(',');
StringBuilder sb = new StringBuilder();
foreach (string s in results)
{
if (!compare.Equals(s))
{
sb.Append(s).Append(",");
}
}
Console.WriteLine(sb.ToString().Substring(0,sb.ToString().Length-1));//sb.Tostring()去掉最后一个字符就是所要的结果
Console.ReadKey();
private string ReplaceString(string originalString, string replaceString)
{
string strResult = string.Empty;
string[] arr = originalString.Split(',');
for (int i = 0; i < arr.Length; i++)
{
if (arr[i].ToString() == "12")
{
strResult = strResult + "," + string.Empty;
}
else
{
strResult = strResult + "," + arr[i].ToString();
}
}
return strResult = strResult.Substring(1);
}应用:
string str = " ,11,12,13,50,80,120,122 ";
ReplaceString(str,"12");