ASP.NET實現(xiàn)按拼音碼模糊查詢的方法
更新時間:2022年05月05日 08:38:44 投稿:lijiao
我們在做數(shù)據(jù)錄入或者查詢的時候,經(jīng)常需要實現(xiàn)按用戶輸入的拼音碼進行數(shù)據(jù)的模糊查詢功能,本文為大家介紹ASP.NET如何實現(xiàn)按拼音碼模糊查詢,需要的朋友可以參考下
整個過程分為兩部分:生成拼音碼字段、按拼音碼進行模糊查詢。
批量生成拼音碼字段的實現(xiàn):
protected void Button1_Click1(object sender, EventArgs e)
{
string strSQL;
strSQL = "select mc from TEST001";
IDataReader dr = dac.DataReaderQuery(strSQL);
while (dr.Read())
{
string mc=dr["mc"].ToString();
string pym = StrToPinyin.GetChineseSpell(mc);
if (pym.Length > 6)
{
pym = pym.Substring(0, 6);//我這里只去了6位,大家可以看自己愛好而定!
}
string updateSql = "update TEST001 set pym ='" + pym + "' where mc='" + mc + "'";
dac.update(updateSql);
}
dr.Close();
Response.Write("<script>alert('操作成功!');</script>");
}
StrToPinyin 類的GetChineseSpell方法(取漢字拼音字母):
public static string GetChineseSpell(string strText)
{
if (strText == null || strText.Length == 0)
return strText;
System.Text.StringBuilder myStr = new System.Text.StringBuilder();
foreach (char vChar in strText)
{
// 若不是漢字則直接輸出
if ((int)vChar < 19968 || (int)vChar > 40869)
{
myStr.Append(char.ToUpper(vChar));
}
else if ((int)vChar >= 19968 && (int)vChar <= 40869)
{
// 若字符Unicode編碼在編碼范圍則 查漢字列表進行轉(zhuǎn)換輸出
foreach (string strList in strChineseCharList)
{
if (strList.IndexOf(vChar) > 0)
{
myStr.Append(strList[0]);
break;
}
}
}
}
return myStr.ToString();
}按拼音碼進行模糊查詢:
這個簡單了,用select查詢,where條件用LIKE即可,相信大家一定都會操作。
相信以后在實現(xiàn)按用戶輸入的拼音碼進行數(shù)據(jù)的模糊查詢功能的時候,大家就可以運用今天所學的ASP.NET實現(xiàn)按拼音碼模糊查詢了。
相關(guān)文章
Path類與Directory類與File類對路徑/目錄/文件的操作實例
本文將詳細介紹下:Path對路徑字符串進行操作/Directory和DirectoryInfo 對目錄進行操作/File和FileInfo對文件進行操作,感興趣的你可不要錯過了哈2013-02-02
ASP.net中網(wǎng)站訪問量統(tǒng)計方法代碼
這篇文章介紹了ASP.net中網(wǎng)站訪問量統(tǒng)計方法代碼,有需要的朋友可以參考一下2013-11-11
asp.net開發(fā)中常見公共捕獲異常方式總結(jié)(附源碼)
這篇文章主要介紹了asp.net開發(fā)中常見公共捕獲異常方式總結(jié),結(jié)合實例形式較為詳細的分析了asp.net捕獲異常的相關(guān)技巧,并提供了完整的實例代碼供讀者下載參考,需要的朋友可以參考下2015-11-11

