字符串帮助类.doc_第1页
字符串帮助类.doc_第2页
字符串帮助类.doc_第3页
字符串帮助类.doc_第4页
字符串帮助类.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#region 格式化/ / 格式化/ / 本身字符串/ / public static string format(this string sInput, params object args)return String.Format(sInput, args);#endregion#region 倒转字符串/ / 倒转字符串/ public static string Reverse(this string sInput)char chars = sInput.ToCharArray();Array.Reverse(chars);return new String(chars);#endregion#region 判断是否为email/ / 判断是否为email/ / / public static bool IsEmail(string email)if (string.IsNullOrWhiteSpace(email)return false;string pattern = w+(-+.w+)*w+(-.w+)*.w+(-.w+)*;return Regex.IsMatch(email, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 判断是否为手机号/ / 判断是否为手机号/ / / public static bool IsMobile(string mobile)if (string.IsNullOrWhiteSpace(mobile)return false;string pattern = (13|15|18)0-99$;return Regex.IsMatch(mobile, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 判断是否为电话/ / 判断是否为电话/ /85/ public static bool IsPhone(string phone)if (string.IsNullOrWhiteSpace(phone)return false;string pattern = (0-93,4)|0-93,4-)?0-97,8(-0-92,4)?$;return Regex.IsMatch(phone, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 判断是否为邮编/ / 判断是否为邮编/ / 415118/ public static bool IsPostCode(string postcode)if (string.IsNullOrWhiteSpace(postcode)return false;string pattern = 0-96$;return Regex.IsMatch(postcode, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 是否有效的姓名/ / 是否有效的姓名/ / / public static bool IsValidName(string name)if (string.IsNullOrWhiteSpace(name)return false;string pattern = (u4e00-u9fa52,5)|(a-zA-Z1,10a-zA-Z. 1,20a-zA-Z1,10)$;return Regex.IsMatch(name, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 是否有效的中文名/ / 是否有效的中文名/ / / public static bool IsValidChineseName(string name)if (string.IsNullOrWhiteSpace(name)return false;string pattern = u4e00-u9fa52,5$;return Regex.IsMatch(name, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 是否为正确的QQ号/ / 是否为正确的QQ号/ / / public static bool IsQQ(string qq)if (string.IsNullOrWhiteSpace(qq)return false;string pattern = 1-90-94,$;return Regex.IsMatch(qq, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);#endregion#region 是否数字/ / 是否数字/ / / public static bool IsNumeric(string sNumeric)return (new Regex(+-?0-9*.?0-9+$).IsMatch(sNumeric);#endregion#region 是否整数/ / 是否整数/ / / public static bool IsInt(string intString)return (new Regex(+-?0-9+$).IsMatch(intString);#endregion#region 是否为正整数/ / 是否为正整数/ / / public static bool IsPosInt(string intString)return (new Regex(0-9*1-90-9*$).IsMatch(intString);#endregion#region 自定义截取字符串/ / 自定义截取字符串/ / 待截取的字符串/ 长度/ 是否带./ public static string SubString(string str, int len, bool hasDots)if (string.IsNullOrWhiteSpace(str) return string.Empty;string dots = string.Empty;if (len = str.Length)return str;if (hasDots)dots = .;return str.Substring(0, len) + dots;#endregion#region 取得客户端IP地址/获取客户端IPpublic static string GetClientIP()string result = HttpContext.Current.Request.ServerVariablesHTTP_X_FORWARDED_FOR;if (null = result | result = String.Empty)result = HttpContext.Current.Request.ServerVariablesREMOTE_ADDR;if (null = result | result = String.Empty)result = HttpContext.Current.Request.UserHostAddress;if (null = result | result = String.Empty)return ;if (result.Equals(:1)return ;return result;/ / 将最后一位数字换为*/ / 输入的ip/ public static string FilterLastNum(string ip)string result = string.Empty;string s = ip.Split(.);for (int i = 0; i s.Length - 1; i+)result += si + .;result += *;return result;#endregion#region 将ID字符串转化为int数组/ / 将ID字符串转化为int数组,默认使用空格和逗号分割/ / / / public static List ConvertFromIdString(string idString,params char splitChars)if (!string.IsNullOrWhiteSpace(idString)List strings;if(splitChars = null|splitChars.Length = 0)strings = idString.Split(new , , StringSplitOptions.RemoveEmptyEntries).ToList();elsestrings = idString.Split(splitChars, StringSplitOptions.RemoveEmptyEntries).ToList();return strings.ConvertAll(DataTypeHelper.GetInt32);return new List();#endregion#region 获取合法的主键字符串/ / 获取合法的主键字符串,比如 1,3,6,7/ / / public static String GetLegalKeyStr(String strKeys)if (String.IsNullOrWhiteSpace(strKeys)return String.Empty;List list = new List();foreach (String key in strKeys.Split(, )if (Regex.IsMatch(key, 0-9+$, RegexOptions.Compiled)list.Add(key);list.Sort();return String.Join(, list.Distinct().ToArray();#endregion#region 获取合法的字典字符串/ / 获取合法的字典字符串,比如 a,b,d,e/ / / public static string GetLegalDictKey(string strKeys)if (string.IsNullOrWhiteSpace(strKeys)return string.Empty;strKeys = strKeys.ToLower();strKeys = Regex.Replace(strKeys, ,a-z0-9_, string.Empty, RegexOptions.Compiled);strKeys = Regex.Replace(strKeys, ,2, , RegexOptions.Compiled);strKeys = strKeys.Trim(,);return strKeys;#endregion#region 获取合法的主键字符串/ / 获取前后有,的主键字符串,比如 ,1,3,6,7,/ / / public static string GetWrapedKeyStr(string strKeys)return strKeys = string.Format(,0, GetLegalKeyStr(strKeys);#endregion#region 获取合法的字典字符串/ / 获取有的字典字符串,比如 a,b,c,d/ / / public static string GetWrapedDictKey(string strKeys)strKeys = GetLegalDictKey(strKeys);if (string.IsNullOrEmpty(strKeys)return string.Empty;strKeys = strKeys.Replace(, ,);return strKeys = string.Format(0, strKeys);#endregion#region 转换文件大小/ / 转换文件大小/ / / public static String FormatFileSize(long fileSize)String fileSizeString = ;if (fileSize 1024)fileSizeString = fileSize + B;else if (fileSize 1024 * 1024)fileSizeString = String.Format(0:F2, (double)fileSize / 1024) + K;else if (fileSize 1024 * 1024 * 1024)fileSizeString = String.Format(0:F2, (double)fileSize / (1024 * 1024) + M;elsefileSizeString = String.Format(0:F2, (double)fileSize / (1024 * 1024 * 1024) + G;return fileSizeString;#endregion#region 通过正则匹配获取值/ / 通过正则匹配获取值/ / / / public static GroupCollection GetPatternValue(string input, string pattern)if (string.IsNullOrWhiteSpace(input)return null;Match match = Regex.Match(input, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);if (match.Success & match.Groups.Count 0)return match.Groups;return null;/ / 通过正则匹配获取值/ / / / public static MatchCollection GetPatternValues(string input, string pattern)if (string.IsNullOrWhiteSpace(input)return null;MatchCollection match = Regex.Matches(input, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);return match;#endregion#region 合并路径/ / 合并路径/ / / / / public static string CombinPath(char separator, string path1, string path2)if (string.IsNullOrWhiteSpace(path1) | string.IsNullOrWhiteSpace(path2)return path1 ? path2;bool b1 = path1path1.Length - 1 = separator;bool b2 = path20 = separator;if (b1 & b2)return path1 + path2.TrimStart(separator);if (b1 | b2)return path1 + path2;return string.Concat(path1, separator, path2);/ / 合并路径/ / / / public static string CombinPath(char separator, params string paths)if (paths = null | paths.Length = 0)return string.Empty;else if (paths.Length = 1)return paths0;System.Text.StringBuilder sb = new System.Text.StringBuilder(paths0);for (int i = 1; i paths.Length; +i)string path = pathsi;if (string.IsNullOrEmpty(path)continue;bool b1 = sbsb.Length - 1 = separator;bool b2 = path0 = separator;if (b1 & b2)sb.Append(path.TrimStart(separator);else if (b1 | b2)sb.Append(path);elsesb.Append(separator);sb.Append(path);return sb.ToString();#endregion#region 计算页数/ / 计算页数/ / / / public static int GetPageCount(int totalRecordCount, int pageSize)return Convert.ToInt32(Math.Ceiling(double)totalRecordCount / pageSize);#endregion#region 版本比较/ / 版本比较/ / / / public static int CompareVersion(string version1, string version2)version1 = Regex.Replace(version1, 0-9., , RegexOptions.Compiled);version2 = Regex.Replace(version2, 0-9., , RegexOptions.Compiled);if (string.IsNullOrEmpty(version1) | string.IsNullOrEmpty(version2)return string.Compare(version1, version2);Version v1 = new Version(version1);Version v2 = new Version(version2);return v1.CompareTo(v2);#endregion#region 将字符串形式的IP转换位long/ 将字符串形式的IP转换位long/public static long IpToLong(string ipAddress)if (string.IsNullOrWhiteSpace(ipAddress) return 0;byte ip_bytes = new byte8;string strArr = ipAddress.Split(new char . );if (strArr.Length != 4) return 0;for (int i = 0; i 4; i+)byte b = 0;if (byte.TryParse(strArr3 - i, out b)ip_bytesi = b;elsereturn 0;return BitConverter.ToInt64(ip_bytes, 0);#endregion#region 混淆密码(如将123456变为1*6)/ / 混淆密码(如将123456变为1*6)/ / / public static string MixPasswd(string passwd)if (string.IsNullOrEmpty(passwd) return string.Empty;char newPasswd = new charpasswd.Length;int mixed = 0;int i = 0;Random rand = new Random();foreach (char ch in passwd)if (rand.Next(100) 55)+mixed;newPasswdi+ = *;elsenewPasswdi+ = ch;i = 0;while (mixed passwd.Length / 2) / 至少一半替换为*if (newPasswdi != *)+mixed;newPasswdi+ = *;return new string(newPasswd);#endregion#region 日期/ / 判断今天是第几周/ / / public static int WeekNumber(DateTime date)string firstDateText = date.Year + -1-1;DateTime firstDay = Convert.ToDateTime(firstDateText);int theday;switch (firstDay.DayOfWeek)case DayOfWeek.Monday:theday = -1;break;case DayOfWeek.Tuesday:theday = 0;break;case DayOfWeek.Wednesday:theday = 1;break;case DayOfWeek.Thursday:theday = 2;break;case DayOfWeek.Friday:theday = 3;break;case DayOfWeek.Saturday:theday = 4;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论