asp.net字符串操作问题

一字符串为c:尀windows|RWAMELCDPstring str="c:尀windows|RWAMELCDP";string[] strArray = str.Split(✀|✀);//分隔字符str1=strArray[0]; //先把|左边的字符存起来temp=strArray[1];//把右边的取出来进行操作现在temp的值是RWAMELCDP,我要进行的操作是:1.删除其中的某个字母(如A),得到新字符串RWMELCDP。2.添加某个字母(如A,此时字符串中肯定没有A),得到新字符串RWAMELCDP3.查看是否存在某字符(如A)。注意:RWAMELCDP这几个字符的顺序不能变,当删了其中某些字符时,余下的向左靠,而不是以空格填充。如依次删除DEW时(进行三次删除操作),余下的字符为RAMLCP最后返回处理后的字符。请问以上功能应该怎么实现?PS:能否将功能12做成一个函数?public string stringSetting(string str){ .....}问题2。添加的时候不能在字符串首或串尾添加,只能按照RWAMELCDP这样的位置添加(不确定所有字符都在,所以不能用Split分隔后加追加)
2026年09月24日 19:21
有1个网友回答
网友(1):

1.删除操作用个replace就行了temp.Replace("A","")//替换为空即可
3.这个就用个Match或者Match或者indexof都可以,如Regex.Match(temp,"A")
2.这个稍微麻烦一点,把temp转换成char数组,然后根据ASSCII码值比较就行了
下面是一个插入字符的方法:
///


/// 字符插入操作
///

/// 要插入的字符
/// 要被插入的字符串
///
public string InsertChar(string c, string strObj)
{
string str = "RWAMELCDP";//需要比较的规则字符串
char[] regChar = str.ToCharArray();
c = c.ToUpper();//转换为大写
int n = str.IndexOf(c);
if (n == -1) return strObj;//如果要插入的字符不是规则字符串里面的 则直接退出
char[] objChar = new char[9];
for (int i = 0; i < 9; i++)
{//初始化数组
if (strObj.IndexOf(regChar[i]) != -1)
{
objChar[i] = regChar[i];
}
}
objChar[n] = Convert.ToChar(c);
strObj = "";
for (int i = 0; i < 9; i++)
{
strObj += objChar[i];
}
return strObj;
}