我想把下面的文本全改成char *choices[] = {
"1.Add student's info(添加学生生信息)",
"2.Sort data(排序 ",
"3.Print student's report(打印学生信息 ",
"5.Backup data(备份 ",
"6.Restore data(还原 ",
"7.Search students(查询学生信息 ",
"8.Stat Score(统计学生信息 ",
"0.return(返回班级管理菜单",
};
改成这样:char *choices[] = {
"1.Add student's info(添加学生生信息)",
"2.Sort data(排序)",
"3.Print student's report(打印学生信息)",
"5.Backup data(备份)",
"6.Restore data(还原)",
"7.Search students(查询学生信息)",
"8.Stat Score(统计学生信息)",
"0.return(返回班级管理菜单)",
};
使用正则替换\w(\s*)"会把\w也替换了,
应该怎么写?
"1.Add student's info(添加学生生信息)",
"2.Sort data(排序 ",
"3.Print student's report(打印学生信息 ",
"5.Backup data(备份 ",
"6.Restore data(还原 ",
"7.Search students(查询学生信息 ",
"8.Stat Score(统计学生信息 ",
"0.return(返回班级管理菜单",
};
改成这样:char *choices[] = {
"1.Add student's info(添加学生生信息)",
"2.Sort data(排序)",
"3.Print student's report(打印学生信息)",
"5.Backup data(备份)",
"6.Restore data(还原)",
"7.Search students(查询学生信息)",
"8.Stat Score(统计学生信息)",
"0.return(返回班级管理菜单)",
};
使用正则替换\w(\s*)"会把\w也替换了,
应该怎么写?
解决方案 »
- 无效的 Resx 文件。无法加载位于行 192、位置 5 的数据中的类型 ,原因是它在构造时引发下列异常: 参数无效。
- 怎么做带链接的DropDownList下拉框
- winfrom中上传图片
- 【好心人指点一下】C# winform编程中,一般要在Program.cs中放入什么代码?
- binary字段读写问题!急急急!
- 怎样缩短路径字符串
- 请问在C#如何实现银行家算法?
- C# 生成的DataSet.xsd的疑惑,关于修饰子global::
- 在c#中派生类可以同时继承多个基类吗?
- GDI+旋转图形时,如何设定旋转的中心点?请高手指点
- 电子秤程序,读数运行时突然关闭电子秤电源,程序报错,怎么处理
- 算法问题+控制台显示问题
{
string yourCode = @"char *choices[] = {
""1.Add student's info(添加学生生信息)"",
""2.Sort data(排序 "",
""3.Print student's report(打印学生信息 "",
""5.Backup data(备份 "",
""6.Restore data(还原 "",
""7.Search students(查询学生信息 "",
""8.Stat Score(统计学生信息 "",
""0.return(返回班级管理菜单"",
};";
string result = Regex.Replace(yourCode, @"(?<=\w)\s*", "");
Console.WriteLine(result);
Console.ReadKey();
}
说明
(?<=Expression)
逆序肯定环视,表示所在位置左侧能够匹配Expression
(?<!Expression)
逆序否定环视,表示所在位置左侧不能匹配Expression
(?=Expression)
顺序肯定环视,表示所在位置右侧能够匹配Expression
(?!Expression)
顺序否定环视,表示所在位置右侧不能匹配Expression
举例:“(?<=Windows )\d+”在匹配“Windows 2003”时,匹配成功,匹配结果为“2003”。我们知道“\d+”表示匹配一个以上的数字,而“(?<=Windows )”相当于一个附加条件,表示所在位置左侧必须为“Windows ”,它所匹配的内容并不计入匹配结果。同样的正则在匹配“Office 2003”时,匹配失败,因为这里任意一串数字子串的左侧都不是“Windows ”。“(?!1)\d+”在匹配“123”时,匹配成功,匹配的结果为“23”。“\d+”匹配一个以上数字,但是附加条件“(?!1)”要求所在位置右侧不能是“1”,所以匹配成功的位置是“2”前面的位置。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lxcnn/archive/2009/06/14/4268033.aspx
Regex.Replace(yourCode, @"(\w+)(\s+)", "$1)");
谢谢逍遥兄,结贴