字符串操作类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;
/// <summary>/// 格式化字符串/// </summary>public class StringUtil{ public StringUtil() { // // TODO: 在此处添加构造函数逻辑 // } /// <summary> /// 从字符串中的尾部删除指定的字符串 /// </summary> /// <param name="sourceString"></param> /// <param name="removedString"></param> /// <returns></returns> public static string Remove(string sourceString,string removedString) { try { if(sourceString.IndexOf(removedString)<0) throw new Exception("原字符串中不包含移除字符串!"); string result = sourceString; int lengthOfSourceString = sourceString.Length; int lengthOfRemovedString = removedString.Length; int startIndex = lengthOfSourceString - lengthOfRemovedString; string tempSubString = sourceString.Substring(startIndex); if(tempSubString.ToUpper() == removedString.ToUpper()) { result = sourceString.Remove(startIndex,lengthOfRemovedString); } return result; } catch { return sourceString; } }
/// <summary> /// 获取拆分符右边的字符串 /// </summary> /// <param name="sourceString"></param> /// <param name="splitChar"></param> /// <returns></returns> public static string RightSplit(string sourceString, char splitChar) { string result=null; string[] tempString = sourceString.Split(splitChar); if(tempString.Length >0) { result = tempString[tempString.Length-1].ToString(); } return result; } /// <summary> /// 获取拆分符左边的字符串 /// </summary> /// <param name="sourceString"></param> /// <param name="splitChar"></param> /// <returns></returns> public static string LeftSplit(string sourceString, char splitChar) { string result=null; string[] tempString = sourceString.Split(splitChar); if(tempString.Length >0) { result = tempString[0].ToString(); } return result; }
/// <summary> /// 去掉最后一个逗号 /// </summary> /// <param name="origin"></param> /// <returns></returns> public static string DelLastComma(string origin) { if(origin.IndexOf(",") == -1) { return origin; } return origin.Substring(0,origin.LastIndexOf(",")); }
/// <summary> /// 删除不可见字符 /// </summary> /// <param name="sourceString"></param> /// <returns></returns> public static string DeleteUnVisibleChar(string sourceString) { System.Text.StringBuilder sBuilder = new System.Text.StringBuilder(131); for(int i = 0;i < sourceString.Length; i++) { int Unicode = sourceString[i]; if(Unicode >= 16) { sBuilder.Append(sourceString[i].ToString()); } } return sBuilder.ToString(); }
/// <summary> /// 获取数组元素的合并字符串 /// </summary> /// <param name="stringArray"></param> /// <returns></returns> public static string GetArrayString(string[] stringArray) { string totalString = null; for(int i=0;i<stringArray.Length;i++) { totalString = totalString + stringArray[i]; } return totalString; }
/// <summary> /// 获取某一字符串在字符串数组中出现的次数 /// </summary> /// <param name="stringArray" type="string[]"> /// <para> /// /// </para> /// </param> /// <param name="findString" type="string"> /// <para> /// /// </para> /// </param> /// <returns> /// A int value... /// </returns> public static int GetStringCount(string[] stringArray,string findString) { int count = -1; string totalString = GetArrayString(stringArray); string subString = totalString;
while(subString.IndexOf(findString)>=0) { subString = totalString.Substring(subString.IndexOf(findString)); count += 1; } return count; }
/// <summary> /// 获取某一字符串在字符串中出现的次数 /// </summary> /// <param name="stringArray" type="string"> /// <para> /// 原字符串 /// </para> /// </param> /// <param name="findString" type="string"> /// <para> /// 匹配字符串 /// </para> /// </param> /// <returns> /// 匹配字符串数量 /// </returns> public static int GetStringCount(string sourceString,string findString) { int count = 0; int findStringLength = findString.Length; string subString = sourceString;
while(subString.IndexOf(findString)>=0) { subString = subString.Substring(subString.IndexOf(findString)+findStringLength); count += 1; } return count; }
/// <summary> /// 截取从startString开始到原字符串结尾的所有字符 /// </summary> /// <param name="sourceString" type="string"> /// <para> /// /// </para> /// </param> /// <param name="startString" type="string"> /// <para> /// /// </para> /// </param> /// <returns> /// A string value... /// </returns> public static string GetSubString(string sourceString,string startString) { try { int index = sourceString.ToUpper().IndexOf(startString); if(index>0) { return sourceString.Substring(index); } return sourceString; } catch { return ""; } }
public static string GetSubString(string sourceString,string beginRemovedString,string endRemovedString) { try { if(sourceString.IndexOf(beginRemovedString)!=0) beginRemovedString = "";
if(sourceString.LastIndexOf(endRemovedString,sourceString.Length - endRemovedString.Length)<0) endRemovedString = "";
int startIndex = beginRemovedString.Length; int length = sourceString.Length - beginRemovedString.Length - endRemovedString.Length ; if(length>0) { return sourceString.Substring(startIndex,length); } return sourceString; } catch { return sourceString;; } } /// <summary> /// 按字节数取出字符串的长度 /// </summary> /// <param name="strTmp">要计算的字符串</param> /// <returns>字符串的字节数</returns> public static int GetByteCount(string strTmp) { int intCharCount=0; for(int i=0;i<strTmp.Length;i++) { if(System.Text.UTF8Encoding.UTF8.GetByteCount(strTmp.Substring(i,1))==3) { intCharCount=intCharCount+2; } else { intCharCount=intCharCount+1; } } return intCharCount; }
/// <summary> /// 按字节数要在字符串的位置 /// </summary> /// <param name="intIns">字符串的位置</param> /// <param name="strTmp">要计算的字符串</param> /// <returns>字节的位置</returns> public static int GetByteIndex(int intIns,string strTmp) { int intReIns=0; if(strTmp.Trim()=="") { return intIns; } for(int i=0;i<strTmp.Length;i++) { if(System.Text.UTF8Encoding.UTF8.GetByteCount(strTmp.Substring(i,1))==3) { intReIns=intReIns+2; } else { intReIns=intReIns+1; } if(intReIns>=intIns) { intReIns=i+1; break; } } return intReIns; } }
