字符串如何使用通配符和正则表达式来替换\?
譬如:
字符串:“中之国美的国”
想把: “中之国”替换成“中国”,把“美的国”替换成“美国”。
a. 想用通配符来进行,譬如替换 "?国"为"国"则可实现上面的结果。
注:? 代表一个字, * 代表任意字符串.
该如何做?
b.用正则表达式该如何进行字符串替换操作?
譬如:
字符串:“中之国美的国”
想把: “中之国”替换成“中国”,把“美的国”替换成“美国”。
a. 想用通配符来进行,譬如替换 "?国"为"国"则可实现上面的结果。
注:? 代表一个字, * 代表任意字符串.
该如何做?
b.用正则表达式该如何进行字符串替换操作?
解决方案 »
- 菜鸟请教 一个post登录的问题
- 怎么在程序里面新建&显示文件夹?
- 求次段代码的含义?
- 看看我的代码,想实现双击B窗体中的panel2中的几个图片中某一个,A窗体中的Panel1将显示该图片
- 自定义配置文件如何读取连接字符串
- 在线等 请问那有OLE DB Provider的驱动程序下载啊,好急啊
- 如何用正则表达式表示一个文件名 只许英文字母数字+小数点内
- 请教c#中的全局变量 在线等
- c#从excel读数据的问题
- 各位高手,那里有c#实例的电子书,多谢
- windows form的两个问题——(1)标题栏的双击事件如何禁止???(2)置顶???
- 如何能使listBox配合shift或ctrl键实现多选的实现方法?
正则表达式中,".*"表示任意字符重复任意次,相当于通配符中 "*"代码:
Regex.Replace( str, ".国", "国" );更多帮助,欢迎参考正则表达式帮助文档:(推荐,尤其入门推荐)
http://www.regexlab.com/zh/regref.htm
using System.Collections;
using System.Text.RegularExpressions;public class MyClass
{
public static void Main()
{
String text = "中之国美的国";
String pattern = "\\w国";
Regex r = new Regex(pattern, RegexOptions.IgnoreCase);
Console.WriteLine("-------------- RESULT -------------");
MatchEvaluator myEvaluator = new MatchEvaluator(MyClass.GetReplaceResult);
Console.WriteLine("原字符串:");
Console.WriteLine(text);
text = r.Replace(text,myEvaluator);
Console.WriteLine("替换后的字符串:");
Console.WriteLine(text);
Console.ReadLine();
}
public static string GetReplaceResult(Match m)
{
//Console.WriteLine(m.Value);
return Regex.Replace(m.Value, "\\w国", "国");
}
}
用这个就可以了。。
.代表任意单字符(除换行符外)
.*代表任意字符串(包括空字符串)。。
.+代表任意非空字符串