mtwm.net
当前位置:首页 >> C# 如何高效替换一个字符串中的全部某字符? >>

C# 如何高效替换一个字符串中的全部某字符?

String.Replace也是全部替换.如果您需要替换复杂的内容,可以使用正则表达式.正则对复杂字串的替换效率高.C#中的正则表达式默认贪婪算法,总试图匹配更多的字符,所以若是简单的替换一个或几个字符,还是不要用比较好.Regex.Replace()需要引用System.Text.RegularExpression命名空间.

1. 直接调用一个封装函数Replace即可,它有两种重载;2. Replace(char oldChar, char newChar)3. 将此实例中的指定 Unicode 字符的所有匹配项替换为其他指定的 Unicode 字符.4. Replace(string oldValue, string newValue)5. 将此实例中的指定 String 的所有匹配项替换为其他指定的 String.6. 第一个参数是被替换的字符串,第二个参数是替换的参数7. 例如var politicallyCorrect = test.Replace("men", "people");将所有的men替换成了people.

两种方法:一是在字符串的前面和后面各加一个,号.再replace(",1,",",2,")最后再在前后各去除一个逗号;二是用数组.楼主,真想打你一顿,你怎么这么懒呢?现实编程中有很多问题都没有模板要套呀,你自己多想想就出方法了

不管C#还是javastring都是不可变的,你只能生成一个新的string对象 用原来的引用指向这个新的对象 而不能改变原来的string正确做法String s = "abcadafega";s = s.Replace('a', 'k');

MSDN: public string Replace( string oldValue, string newValue )

查找某字符在字符串中的所有位置时,可以首先通过ToCharArray方法将字符串转换为Char类型的数组,然后循环访问该数组,如果数组中的值与要查找的字符相同,则将其位置取出.查找某字符在字符串中所有位置的实现代码如下:

replace 语法replace ( string1, start, string2,n,m ) 参数string1:string类型,指定要使用string2替换其中一部分内容的字符串; 参数start:long类型,指定要从哪个字符位置开始替换字符串,字符串中第一个字符的位置为1; 参数n:long类型,指定要替换开始字符起始位置,从左到右; 参数m:int类型,指定要替换字符串的次数,1 代表替换一次;

说个思路:1、把txt文件用流读进来,放到一个字符串数组里;2、循环字符串数组,判断是否有要替换的字符,如果有就替换;3、把修改后的字符串数组再写回txt文件,把以前的内容覆盖.完成

用substring(int a,int b) 此函数用来截取字符串 例: string time1="2007-10-25"; string time2=time1.subString(0,3)+time1.substring(5,6)+time1.substring(8,9); 此时time2="20071025"了 或用replace()替换也行

string str = "1234567890";if (str.Length > 6) str = str.Substring(0, 6) + "";

bestwu.net | zmqs.net | knrt.net | ntjm.net | qmbl.net | 网站首页 | 网站地图
All rights reserved Powered by www.mtwm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com