输入字母串转换成相对应的图片

ycg8709 2010-01-05 08:29:58
字母与图形对应表
a对应1a b对应1b c对应1c d对应1d e对应1e f对应1f g对应1g h对应1h i对应1i j对应1j

k对应1k l对应1l m对应1m n对应1n o对应1o p对应1p q对应1q r对应1r s对应1s t对应1t

u对应1u v对应1v w对应1w x对应1x y对应1y z对应1z

zh对应1zh ch对应1ch sh对应1sh ai对应1ai an对应1an aw对应1aw ei对应1ei er对应1er ou对应1ou ow对应1ow ia对应1ia ie对应1ie io对应1io iu对应1iu

ian对应1ian iaw对应1iaw in对应1in iw对应1iw iow对应1iow uan对应1uan uaw对应1uaw uw对应1uw van对应1van ve对应1ve vn对应1vn

随意输入一串字母,如sghu vanaiow 然后点击转换按钮,把字母转换成图形(本来字母对应的是图片名,为了简单所以用了1+字母的组合)。

上面的字母转换后应该是:1s1g1h1u 1van1a1iow

疑问:我的思路是首先判断输入的字母是不是有三个相连的,没有再看是不是有两个相连,再没有就转换成单个的。可是怎么先判断这串字母的前三位,没有相对应的再判断前两位,最后是一位。是用循环吗?实在想不出来,请高手指教!
...全文
175 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
波导终结者 2010-01-05
  • 打赏
  • 举报
回复
你这种设计极度不合理,只能从长的开始换,一次一次循环一直换到短的
csdn_风中雪狼 2010-01-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ycg8709 的回复:]
kensouterry兄
  我就是三个在一块的再夹个单个字母的不会显示,请问vanaiow这是要显示三幅图片的,分别为1van 1a 1iow,请为这个怎么判断啊,不像你写的那么简单吧?
[/Quote]
你这个只有用循环来一个一个字母的来组合实现,想一步到位,是不可能的
ycg8709 2010-01-05
  • 打赏
  • 举报
回复
kensouterry兄
我就是三个在一块的再夹个单个字母的不会显示,请问vanaiow这是要显示三幅图片的,分别为1van 1a 1iow,请为这个怎么判断啊,不像你写的那么简单吧?
wuyq11 2010-01-05
  • 打赏
  • 举报
回复
规则设计很麻烦
每次都要遍历字符串形成新字符串获取图片名称
csdn_风中雪狼 2010-01-05
  • 打赏
  • 举报
回复
这样的设计不太合理,每次都要去拆分一下
如果在输入时每个字母(图片名)之间用什么特殊符号(如|或-)分隔下,那样在程序处理起来就不会很麻烦,但是这样用户就不会分方便.
想一个比较好的方法,用户输入和程序处理都不麻烦的方法来
kensouterry 2010-01-05
  • 打赏
  • 举报
回复
楼上点评得极是,这样设计是不太合理,至少字符之间也得有个间隔符啊 什么的!
kensouterry 2010-01-05
  • 打赏
  • 举报
回复
//3个字母图片的集合
List<String> list3=new List<String>;

StringBuilder s="[input]";
for(int i=0;i<list3.Length;i++)
{
if(s.Contains(list3[i])
return true;
}
return false;

//返回false就表示输入的字符串中没有3个相连的字母;判断2位的就类似处理了!
ycg8709 2010-01-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 alifriend 的回复:]
你这样设计不合理吧,比如vn,你到底是要拆成v和n,对应1v1n,还是vn整个对应1vn?
[/Quote]

vn整个对应1vn
波导终结者 2010-01-05
  • 打赏
  • 举报
回复
你这样设计不合理吧,比如vn,你到底是要拆成v和n,对应1v1n,还是vn整个对应1vn?

110,533

社区成员

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

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

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