C#中关于字符串的处理,特定字符之间截取,然后随机排列。。。

荒川土著 2016-08-09 05:39:35
例如,字符串是这样的 ”<li>111</li><li>222</li><li>333</li> <li>444 </li>”,怎么处理,截取每个<li>XXX</li>,然后重新随机排列,变成大概这样的效果 ”<li>333</li><li>222</li><li>444</li> <li>111 </li>”?
...全文
122 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
巴士上的邂逅 2016-08-10
  • 打赏
  • 举报
回复
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
荒川土著 2016-08-10
  • 打赏
  • 举报
回复
引用 1 楼 yuankaiwsl 的回复:
string s = "<li>111</li><li>222</li><li>333</li> <li>444</li>";
Console.WriteLine(s);
var a = Regex.Matches(s, @"<li>\w+</li>");
var f = a.Cast<Match>().Select(m => m.Value).ToList();
List<int> indices = new List<int>();
for (int i = 0; i < f.Count; i++)
{
    indices.Add(i);
}
Random r = new Random();
string d = "";
for (int i = 0; i < f.Count; i++)
{
    int j = indices[r.Next(indices.Count)];
    d += f[j];
    indices.Remove(j);
}
Console.WriteLine(d);
大神!我是刚接触C#,这里面需要引入的using 命名空间都有啥,能把完整的代码让我看看不
巴士上的邂逅 2016-08-10
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
Regex.Matches(html, @"<li\b[^<>]*?>[\s\S]*?</li>").Cast<Match>().OrderBy(m => Guid.NewGuid())
结果string.join下
学习了!
by_封爱 版主 2016-08-10
  • 打赏
  • 举报
回复
引用 2 楼 starfd 的回复:
Regex.Matches(html, @"<li\b[^<>]*?>[\s\S]*?</li>").Cast<Match>().OrderBy(m => Guid.NewGuid())
结果string.join下
现在拉姆达这么6了么?
  • 打赏
  • 举报
回复
Regex.Matches(html, @"<li\b[^<>]*?>[\s\S]*?</li>").Cast<Match>().OrderBy(m => Guid.NewGuid())
结果string.join下
巴士上的邂逅 2016-08-09
  • 打赏
  • 举报
回复
string s = "<li>111</li><li>222</li><li>333</li> <li>444</li>";
Console.WriteLine(s);
var a = Regex.Matches(s, @"<li>\w+</li>");
var f = a.Cast<Match>().Select(m => m.Value).ToList();
List<int> indices = new List<int>();
for (int i = 0; i < f.Count; i++)
{
    indices.Add(i);
}
Random r = new Random();
string d = "";
for (int i = 0; i < f.Count; i++)
{
    int j = indices[r.Next(indices.Count)];
    d += f[j];
    indices.Remove(j);
}
Console.WriteLine(d);

110,538

社区成员

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

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

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