字符转换

小堇 2011-01-29 09:17:26
字符串:a我爱9只cat和1010条鱼
生成后:AWAJZCHYTY
过程:单个汉字则直接生成该汉字拼音的首字母,英文单词则直接生成该单词的首字母,同时若在没有空格的情况下英文单词只有一个字母,则直接生成该字母;单个数字,则直接生成该数字的汉语拼音的首字母,若是连续的数字,如上面的1010则要生成第一个数字的汉语拼音首字母,如上面的1010只生成Y(1的汉语拼音首字母)。
...全文
118 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cjh200102 2011-01-31
  • 打赏
  • 举报
回复
这个貌似工程好大
哥子谭 2011-01-30
  • 打赏
  • 举报
回复
没玩过这个东西
兔子-顾问 2011-01-30
  • 打赏
  • 举报
回复
a我cat你

a我cat1你
生成的密文一样。
vrhero 2011-01-30
  • 打赏
  • 举报
回复
取首字母很简单...但是就像wuyazhe说的那个问题,你这个编码规则本身是很成问题的...压根儿就行不通...
wangyue4 2011-01-30
  • 打赏
  • 举报
回复
正则匹配
wuyq11 2011-01-29
  • 打赏
  • 举报
回复
string str = "a我爱9只cat和1010条鱼";
Regex regExp = new Regex(@"(?is)((?<chinese>[\u4E00-\u9FA5]+)|(?<letter>[a-z]+)|(?<num>\d+))");//|$
MatchCollection mc = regExp.Matches(str);
foreach (Match m in mc)
{
if (m.Groups["chinese"].Success) Console.Write(m.Groups["chinese"].Value + "\n");
if (m.Groups["letter"].Success) Console.Write(m.Groups["letter"].Value + "\n");
if (m.Groups["num"].Success)Console.Write(m.Groups["num"].Value + "\n");
}
a
我爱
9

cat

1010
条鱼
wuyq11 2011-01-29
  • 打赏
  • 举报
回复
正则获取字母,数字,中文
匹配中文:[\u4e00-\u9fa5]
英文字母:[a-zA-Z]
[0-9]

Regex reg = new Regex( "^[\u4e00-\u9fa5]+$ ");
中文首字母
http://topic.csdn.net/u/20100206/07/d365743f-b244-401b-9216-80ed76166775.html
l576981437 2011-01-29
  • 打赏
  • 举报
回复


又来人工智能? ps:这个需要对照表吧

110,538

社区成员

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

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

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