非常实用的C#字符串操作处理类StringHelper.cs
一个非常好的C#字符串操作处理类StringHelper.cs,具体内容如下
//////类说明:Assistant ///编码人:苏飞 ///联系方式:361983679 ///更新网站:http://www.sufeinet.com/thread-655-1-1.html /// usingSystem; usingSystem.Collections.Generic; usingSystem.Text; usingSystem.Text.RegularExpressions; namespaceDotNet.Utilities { //////字符串操作类 ///1、GetStrArray(stringstr,charspeater,booltoLower)把字符串按照分隔符转换成List ///2、GetStrArray(stringstr)把字符串转按照,分割换为数据 ///3、GetArrayStr(Listlist,stringspeater)把List按照分隔符组装成string ///4、GetArrayStr(Listlist)得到数组列表以逗号分隔的字符串 ///5、GetArrayValueStr(Dictionary publicclassStringHelper { ///list)得到数组列表以逗号分隔的字符串 ///6、DelLastComma(stringstr)删除最后结尾的一个逗号 ///7、DelLastChar(stringstr,stringstrchar)删除最后结尾的指定字符后的字符 ///8、ToSBC(stringinput)转全角的函数(SBCcase) ///9、ToDBC(stringinput)转半角的函数(SBCcase) ///10、GetSubStringList(stringo_str,charsepeater)把字符串按照指定分隔符装成List去除重复 ///11、GetCleanStyle(stringStrList,stringSplitString)将字符串样式转换为纯字符串 ///12、GetNewStyle(stringStrList,stringNewStyle,stringSplitString,outstringError)将字符串转换为新样式 ///13、SplitMulti(stringstr,stringsplitstr)分割字符串 ///14、SqlSafeString(stringString,boolIsDel) /// ///把字符串按照分隔符转换成List /// ///源字符串 /// 分隔符 /// 是否转换为小写 /// publicstaticList GetStrArray(stringstr,charspeater,booltoLower) { List list=newList (); string[]ss=str.Split(speater); foreach(stringsinss) { if(!string.IsNullOrEmpty(s)&&s!=speater.ToString()) { stringstrVal=s; if(toLower) { strVal=s.ToLower(); } list.Add(strVal); } } returnlist; } /// ///把字符串转按照,分割换为数据 /// ////// publicstaticstring[]GetStrArray(stringstr) { returnstr.Split(newChar[]{','}); } /// ///把List ///按照分隔符组装成string /// /// /// publicstaticstringGetArrayStr(List list,stringspeater) { StringBuildersb=newStringBuilder(); for(inti=0;i ///得到数组列表以逗号分隔的字符串 /// /// /// publicstaticstringGetArrayStr(List list) { StringBuildersb=newStringBuilder(); for(inti=0;i ///得到数组列表以逗号分隔的字符串 /// /// /// publicstaticstringGetArrayValueStr(Dictionary list) { StringBuildersb=newStringBuilder(); foreach(KeyValuePair kvpinlist) { sb.Append(kvp.Value+","); } if(list.Count>0) { returnDelLastComma(sb.ToString()); } else { return""; } } #region删除最后一个字符之后的字符 /// ///删除最后结尾的一个逗号 /// publicstaticstringDelLastComma(stringstr) { returnstr.Substring(0,str.LastIndexOf(",")); } //////删除最后结尾的指定字符后的字符 /// publicstaticstringDelLastChar(stringstr,stringstrchar) { returnstr.Substring(0,str.LastIndexOf(strchar)); } #endregion //////转全角的函数(SBCcase) /// ////// publicstaticstringToSBC(stringinput) { //半角转全角: char[]c=input.ToCharArray(); for(inti=0;i ///转半角的函数(SBCcase) /// /// 输入 /// publicstaticstringToDBC(stringinput) { char[]c=input.ToCharArray(); for(inti=0;i 65280&&c[i]<65375) c[i]=(char)(c[i]-65248); } returnnewstring(c); } /// ///把字符串按照指定分隔符装成List去除重复 /// ////// /// publicstaticList GetSubStringList(stringo_str,charsepeater) { List list=newList (); string[]ss=o_str.Split(sepeater); foreach(stringsinss) { if(!string.IsNullOrEmpty(s)&&s!=sepeater.ToString()) { list.Add(s); } } returnlist; } #region将字符串样式转换为纯字符串 /// ///将字符串样式转换为纯字符串 /// ////// /// publicstaticstringGetCleanStyle(stringStrList,stringSplitString) { stringRetrunValue=""; //如果为空,返回空值 if(StrList==null) { RetrunValue=""; } else { //返回去掉分隔符 stringNewString=""; NewString=StrList.Replace(SplitString,""); RetrunValue=NewString; } returnRetrunValue; } #endregion #region将字符串转换为新样式 /// ///将字符串转换为新样式 /// ////// /// /// /// publicstaticstringGetNewStyle(stringStrList,stringNewStyle,stringSplitString,outstringError) { stringReturnValue=""; //如果输入空值,返回空,并给出错误提示 if(StrList==null) { ReturnValue=""; Error="请输入需要划分格式的字符串"; } else { //检查传入的字符串长度和样式是否匹配,如果不匹配,则说明使用错误。给出错误信息并返回空值 intstrListLength=StrList.Length; intNewStyleLength=GetCleanStyle(NewStyle,SplitString).Length; if(strListLength!=NewStyleLength) { ReturnValue=""; Error="样式格式的长度与输入的字符长度不符,请重新输入"; } else { //检查新样式中分隔符的位置 stringLengstr=""; for(inti=0;i ///分割字符串 /// /// /// /// publicstaticstring[]SplitMulti(stringstr,stringsplitstr) { string[]strArray=null; if((str!=null)&&(str!="")) { strArray=newRegex(splitstr).Split(str); } returnstrArray; } publicstaticstringSqlSafeString(stringString,boolIsDel) { if(IsDel) { String=String.Replace("'",""); String=String.Replace("\"",""); returnString; } String=String.Replace("'","'"); String=String.Replace("\"","""); returnString; } #region获取正确的Id,如果不是正整数,返回0 /// ///获取正确的Id,如果不是正整数,返回0 /// ////// 返回正确的整数ID,失败返回0 publicstaticintStrToId(string_value) { if(IsNumberId(_value)) returnint.Parse(_value); else return0; } #endregion #region检查一个字符串是否是纯数字构成的,一般用于查询字符串参数的有效性验证。 //////检查一个字符串是否是纯数字构成的,一般用于查询字符串参数的有效性验证。(0除外) /// ///需验证的字符串。。 /// 是否合法的bool值。 publicstaticboolIsNumberId(string_value) { returnQuickValidate("^[1-9]*[0-9]*$",_value); } #endregion #region快速验证一个字符串是否符合指定的正则表达式。 //////快速验证一个字符串是否符合指定的正则表达式。 /// ///正则表达式的内容。 /// 需验证的字符串。 /// 是否合法的bool值。 publicstaticboolQuickValidate(string_express,string_value) { if(_value==null)returnfalse; RegexmyRegex=newRegex(_express); if(_value.Length==0) { returnfalse; } returnmyRegex.IsMatch(_value); } #endregion #region根据配置对指定字符串进行MD5加密 //////根据配置对指定字符串进行MD5加密 /// ////// publicstaticstringGetMD5(strings) { //md5加密 s=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(s,"md5").ToString(); returns.ToLower().Substring(8,16); } #endregion #region得到字符串长度,一个汉字长度为2 /// ///得到字符串长度,一个汉字长度为2 /// ///参数字符串 /// publicstaticintStrLength(stringinputString) { System.Text.ASCIIEncodingascii=newSystem.Text.ASCIIEncoding(); inttempLen=0; byte[]s=ascii.GetBytes(inputString); for(inti=0;i ///截取指定长度字符串 /// /// 要处理的字符串 /// 指定长度 /// 返回处理后的字符串 publicstaticstringClipString(stringinputString,intlen) { boolisShowFix=false; if(len%2==1) { isShowFix=true; len--; } System.Text.ASCIIEncodingascii=newSystem.Text.ASCIIEncoding(); inttempLen=0; stringtempString=""; byte[]s=ascii.GetBytes(inputString); for(inti=0;ilen) break; } byte[]mybyte=System.Text.Encoding.Default.GetBytes(inputString); if(isShowFix&&mybyte.Length>len) tempString+="…"; returntempString; } #endregion #regionHTML转行成TEXT /// ///HTML转行成TEXT /// ////// publicstaticstringHtmlToTxt(stringstrHtml) { string[]aryReg={ @"", @"<(\/\s*)?!?((\w+:)?\w+)(\w+(\s*=?\s*(([""'])(\\[""'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>", @"([\r\n])[\s]+", @"&(quot|#34);", @"&(amp|#38);", @"&(lt|#60);", @"&(gt|#62);", @"&(nbsp|#160);", @"&(iexcl|#161);", @"&(cent|#162);", @"&(pound|#163);", @"&(copy|#169);", @"(\d+);", @"-->", @" 热门推荐