又一个正则问题

koumingjie 2011-08-19 11:16:51
List<string> list = new List<string>();
list[1] = "第1章 aaaaaaa第1章bbbbbb第2章c 第1章";
list[2] = "第2章bbbbb ccccccc";
list[3] = "第100章 第100章第100章第100章 第100章 dddd";
//如何用正则实现将开始位置的第N章到第一个空格前(!!!!!!注意是第一个空格前)后加上<b></b>
//即
//list[1] = "<b>第1章</b> aaaaaaa第1章bbbbbb第2章c 第1章";
//list[2] = "<b>第2章bbbbb</b> ";//!!!!!!!!!!!!!!!第一个空格前
//list[3] = "<b>第100章</b> 第100章第100章第100章 第100章 dddd";
...全文
106 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
遥望那些年 2011-08-19
  • 打赏
  • 举报
回复

List<string> list = new List<string>();
list.Add("第1章 aaaaaaa第1章bbbbbb第2章c 第1章");
list.Add("第2章bbbbb ccccccc");
list.Add("第100章 第100章第100章第100章 第100章 dddd");
Regex reg = new Regex(@"^第\d+章[\S]*");
for (int i = 0; i < list.Count; i++)
list[i] = reg.Replace(list[i], "<br>$0</br>");
言多必失 2011-08-19
  • 打赏
  • 举报
回复
标记下,学习。
huangwenquan123 2011-08-19
  • 打赏
  • 举报
回复
            List<string> list = new List<string>();
list.Add("第1章 aaaaaaa第1章bbbbbb第2章c 第1章");
list.Add("第2章bbbbb ccccccc");
list.Add("第100章 第100章第100章第100章 第100章 dddd");
Regex reg = new Regex(@"^[^\s]+");
for (int i = 0; i < list.Count; i++)
list[i] = reg.Replace(list[i], "<br>$0</br>");
porschev 2011-08-19
  • 打赏
  • 举报
回复



List<string> list = new List<string>();
list.Add("第1章 aaaaaaa第1章bbbbbb第2章c 第1章");
list.Add("第2章bbbbb ccccccc");
list.Add("第100章 第100章第100章第100章 第100章 dddd");

for (int i = 0; i < list.Count; i++)
{
list[i] = Regex.Replace(list[i], @"^\w+", "<b>$0</b>");
}

free_live_zyx 2011-08-19
  • 打赏
  • 举报
回复
路过,帮顶。
mamxfx 2011-08-19
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 fesh004 的回复:]

我一直觉得正则很难学,很多东西都记不住。当然我平常也很少用。不知道有没有什么办法,能让我更好的掌握正则表达式的
[/Quote]

给自己动力~~
想学只是前提,
动力才是根本,
实践是王道~~
fesh004 2011-08-19
  • 打赏
  • 举报
回复
我一直觉得正则很难学,很多东西都记不住。当然我平常也很少用。不知道有没有什么办法,能让我更好的掌握正则表达式的
foxd 2011-08-19
  • 打赏
  • 举报
回复
路过,帮顶。
  • 打赏
  • 举报
回复

Regex reg = new Regex(@"^第\d+章\S*(?=\s+)");
list.ForEach(s => reg.Replace(s, "<b>$0</b>"));
  • 打赏
  • 举报
回复
Regex reg = new Regex(@"^第\w+章(?=\s+)");
list.ForEach(s => reg.Replace(s, "<b>$0</b>"));

  • 打赏
  • 举报
回复

Regex reg = new Regex(@"^第\w+章(?= )");
list.ForEach(s => reg.Replace(s, "<b>$0</b>"));
silent_hanx 2011-08-19
  • 打赏
  • 举报
回复


for(int i=0; i<list.Count; i++)
{
list[i] = Regex.Replace(list[i], @"(?<=").*?(?= )", "<br>$&</br>");
}

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧