62,075
社区成员
发帖
与我相关
我的任务
分享
// 'A'; //45217..45252
// 'B'; //45253..45760
// 'C'; //45761..46317
// 'D'; //46318..46825
// 'E'; //46826..47009
// 'F'; //47010..47296
// 'G'; //47297..47613
// 'H'; //47614..48118
// 'J'; //48119..49061
// 'K'; //49062..49323
// 'L'; //49324..49895
// 'M'; //49896..50370
// 'N'; //50371..50613
// 'O'; //50614..50621
// 'P'; //50622..50905
// 'Q'; //50906..51386
// 'R'; //51387..51445
// 'S'; //51446..52217
// 'T'; //52218..52697
//没有U,V
// 'W'; //52698..52979
// 'X'; //52980..53640
// 'Y'; //53689..54480
// 'Z'; //54481..55289
A 516b 八
B 5693 嚓
C 5491 咑
D 59b8 妸
E 53d1 发
F 65ee 旮
G 94ea 铪
H 8ba5 讥
J 5494 咔
K 5783 垃
L 5452 呒
M 62cf 拏
N 5662 噢
O 5991 妑
P 4e03 七
Q 4ebd 亽
R 4ee8 仨
S 4ed6 他
T 54c7 哇
W 5915 夕
X 4e2b 丫
Y 5e00 帀
Z 5497 咗
Dictionary<char,int> dicChinese = new Dictionary<char, int>();
dicChinese.Add('A', 0x0010);
dicChinese.Add('B', 0x0120);
//Todo: Add the key-value pair here
dicChinese.Add('L', 0x674e); // 李
dicChinese.Add('W', 0x738b); // 王
dicChinese.Add('Z', 0x9f20); // 张,实际应是0x5f20
string[] names = new string[]{"张三","李四","王二麻子"};
var nameresult = names.Where(n => dicChinese
.Where(c => ((int)n.First()) >= c.Value)
.Last().Key =='L');
foreach(var name in nameresult)
Console.WriteLine(name);
李四
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
namespace Core
{
/*
* 说明:此类用于将一个字符串找出首字声母,用法:ChineseConvert.UtilIndexCode(str);
*
*
*/
/// <summary>
/// ChineseConvert 的摘要说明
/// </summary>
public class ChineseConvert
{
public ChineseConvert()
{
}
/// <summary>
/// 返回字符串的首写字母字符串
/// </summary>
/// <param name="IndexTxt">需得到首写字母的字符串</param>
/// <returns></returns>
public static String UtilIndexCode(String IndexTxt)
{
string _Temp = null;
for (int i = 0; i < IndexTxt.Length; i++)
_Temp = _Temp + GetOneIndex(IndexTxt.Substring(i, 1));
return _Temp;
}
//得到单个字符的首字母
private static String GetOneIndex(String OneIndexTxt)
{
if (Convert.ToChar(OneIndexTxt) >= 0 && Convert.ToChar(OneIndexTxt) < 256)
return OneIndexTxt;
else
return GetGbkX(OneIndexTxt);
}
//根据汉字拼音排序得到首字母
private static string GetGbkX(string str)
{
if (str.CompareTo("吖") < 0)
{
return str;
}
if (str.CompareTo("八") < 0)
{
return "A";
}
if (str.CompareTo("嚓") < 0)
{
return "B";
}
if (str.CompareTo("咑") < 0)
{
return "C";
}
if (str.CompareTo("妸") < 0)
{
return "D";
}
if (str.CompareTo("发") < 0)
{
return "E";
}
if (str.CompareTo("旮") < 0)
{
return "F";
}
if (str.CompareTo("铪") < 0)
{
return "G";
}
if (str.CompareTo("讥") < 0)
{
return "H";
}
if (str.CompareTo("咔") < 0)
{
return "J";
}
if (str.CompareTo("垃") < 0)
{
return "K";
}
if (str.CompareTo("呒") < 0)
{
return "L";
}
if (str.CompareTo("拏") < 0)
{
return "M";
}
if (str.CompareTo("噢") < 0)
{
return "N";
}
if (str.CompareTo("妑") < 0)
{
return "O";
}
if (str.CompareTo("七") < 0)
{
return "P";
}
if (str.CompareTo("亽") < 0)
{
return "Q";
}
if (str.CompareTo("仨") < 0)
{
return "R";
}
if (str.CompareTo("他") < 0)
{
return "S";
}
if (str.CompareTo("哇") < 0)
{
return "T";
}
if (str.CompareTo("夕") < 0)
{
return "W";
}
if (str.CompareTo("丫") < 0)
{
return "X";
}
if (str.CompareTo("帀") < 0)
{
return "Y";
}
if (str.CompareTo("咗") < 0)
{
return "Z";
}
return str;
}
}
}
LINQ:
...
IList<UserInfo> users = XX.getAllUserInfo();
string s = this.tbName.Text.Trim(); //输入的字符
var result= from user in users
where user.UserName.StartsWith(s)
select user;
foreach(UserInfo u in result)
{
Response.Write(u.UserName+"/"+u.Sex);
}
...
string[] names = new string[]{"Adams","Ajax","Alice","Bob","Candy","Dodge","Dinny"};
string[] result = names.Where(n=>n.StartsWith("D")).DefaultIfEmpty().ToArray();
foreach (string name in result)
Console.WriteLine(name);
Dodge
Dinny