字符串问题

johnwanzhi 2012-03-15 11:48:28

string str="AAA??**??";

?号是数字0-9的随机数
*号是字母A-Z的随机数
如题,根据str中的 ?号或者*号出现的位置,长度生成随机数。

例如:
AAA13QW34
AAA23FA40
...全文
82 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
johnwanzhi 2012-03-15
  • 打赏
  • 举报
回复
4楼真的不行!
johnwanzhi 2012-03-15
  • 打赏
  • 举报
回复
谢谢7楼,解决了!
muyi66 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 johnwanzhi 的回复:]

引用 4 楼 muyi66 的回复:

由两个int变量分别保存生成的两个随机数字:N1,N2
由string变量Letters保存两个随机字母组成的串
然后:
string str="AAA"+N1.ToString("00")+Letters+N2.ToString("00");


不行。试了。而且?*还有顺序之分
[/Quote]顺序根本没问题,你没看用了两个int变量吗?

至于不行???怎么不行了?
BenBenCode 2012-03-15
  • 打赏
  • 举报
回复
string str = "AAA??**??";
string[] strWord = new string[26] { "A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z",};
Random ran = new Random();
StringBuilder sb = new StringBuilder();

for (int i = 0; i < str.Length; i++)
{
if (str[i].Equals('?'))
sb.Append(ran.Next(0, 10));
else if (str[i].Equals('*'))
sb.Append(strWord[ran.Next(0,25)]);
else
sb.Append(str[i]);
}
MessageBox.Show(sb.ToString());
johnwanzhi 2012-03-15
  • 打赏
  • 举报
回复
如:
AAA??**
AAA30AZ

AAA*?*
AAAQ1W
johnwanzhi 2012-03-15
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 muyi66 的回复:]

由两个int变量分别保存生成的两个随机数字:N1,N2
由string变量Letters保存两个随机字母组成的串
然后:
string str="AAA"+N1.ToString("00")+Letters+N2.ToString("00");
[/Quote]

不行。试了。而且?*还有顺序之分
muyi66 2012-03-15
  • 打赏
  • 举报
回复
由两个int变量分别保存生成的两个随机数字:N1,N2
由string变量Letters保存两个随机字母组成的串
然后:
string str="AAA"+N1.ToString("00")+Letters+N2.ToString("00");
johnwanzhi 2012-03-15
  • 打赏
  • 举报
回复
求方法!
faoyy 2012-03-15
  • 打赏
  • 举报
回复
yusizao
杨友山 2012-03-15
  • 打赏
  • 举报
回复
循环每个字符,替换

110,568

社区成员

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

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

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