.net 字符串操作方法(替换,分解等)

/***************************************************************

* 更新记录

* 2007-1-5 更新:

* 1,取字符串右侧的几个字符

* 2,替换右侧的字符串

****************************************************************/

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;

using System.Text;

namespace EC

{

///

/// 常用函数基类

///

public class FunObject

{

#region 替换字符串

///

/// 功能:替换字符

///

/// 字符串

/// 替换掉'的字符串

public static string FilterSQL(string strVAlue)

{

string str = "";

str = strVAlue.Replace("''", "");

return str;

}

#endregion

#region 对表 表单内容进行转换HTML操作,

///

/// 功能:对表 表单内容进行转换HTML操作,

///

/// html字符串

///

public static string HtmlCode(string fString)

{

string str = "";

str = fString.Replace(">", ">");

str = fString.Replace("<", "&lt;");

str = fString.Replace(" ", "&nbsp;");

str = fString.Replace("\n", "

");

str = fString.Replace("\r", "

");

str = fString.Replace("\r\n", "

");

return str;

}

#endregion

#region 判断是否:返回值:√ or ×

///

/// 判断是否:返回值:√ or ×

///

/// true 或false

/// √ or ×

public static string Judgement(bool b)

{

string s = "";

if (b == true)

s = "√";

else

s = "×";

return s;

}

#endregion

#region 截取字符串

///

/// 功能:截取字符串长度

///

/// 要截取的字符串

/// 字符串长度

/// true:加...,flase:不加

///

public static string GetString(string str, int length, bool flg)

{

int i = 0, j = 0;

foreach (char chr in str)

{

if ((int)chr > 127)

{

i += 2;

}

else

{

i++;

}

if (i > length)

{

str = str.Substring(0, j);

if (flg)

str += "......";

break;

}

j++;

}

return str;

}

#endregion

#region 截取字符串+…

///

/// 截取字符串+…

///

///

///

///

public static string CutString(string strInput, int intlen)//截取字符串

{

ASCIIEncoding ascii = new ASCIIEncoding();

int intLength = 0;

string strString = "";

byte[] s = ascii.GetBytes(strInput);

for (int i = 0; i < s.Length; i++)

{

if ((int)s[i] == 63)

{

intLength += 2;

}

else

{

intLength += 1;

}

try

{

strString += strInput.Substring(i, 1);

}

catch

{

break;

}

if (intLength > intlen)

{

break;

}

}

//如果截过则加上半个省略号

byte[] mybyte = System.Text.Encoding.Default.GetBytes(strInput);

if (mybyte.Length > intlen)

{

strString += "…";

}

return strString;

}

#endregion

#region 字符串分函数

///

/// 字符串分函数

///

///

///

///

///

public string StringSplit(string strings, int index, string Separ)

{

string[] s = strings.Split(char.Parse(Separ));

return s[index];

}

#endregion

#region 分解字符串为数组

///

/// 字符串分函数

///

/// 要分解的字符串

/// 分割符,可以为string类型

/// 字符数组

public static string[] splitstr(string str, string splitstr)

{

if (splitstr != "")

{

System.Collections.ArrayList c = new System.Collections.ArrayList();

while (true)

{

int thissplitindex = str.IndexOf(splitstr);

if (thissplitindex >= 0)

{

c.Add(str.Substring(0, thissplitindex));

str = str.Substring(thissplitindex + splitstr.Length);

}

else

{

c.Add(str);

break;

}

}

string[] d = new string[c.Count];

for (int i = 0; i < c.Count; i++)

{

d[i] = c[i].ToString();

}

return d;

}

else

{

return new string[] { str };

}

}

#endregion

#region URL编码

///

/// URL编码

///

/// 字符串

///

public static string UrlEncoding(string str)

{

byte[] bytes = System.Text.Encoding.UTF8.GetBytes(str);

return System.Text.Encoding.UTF8.GetString(bytes).ToString();

}

#endregion

#region 获取Web.config中的配置字段值

///

/// 获取全局配置参数

///

/// 键名

/// 参数

public static string GetApp(string key)

{

System.Configuration.AppSettingsReader appr = new System.Configuration.AppSettingsReader();

try

{

string str = (string)appr.GetValue(key, typeof(string));

if (str == null || str == "") return null;

return str;

}

catch (Exception E) { }

return null;

}

#endregion

#region 根据传入的字符串是否为yes/no返回Bit

///

/// 根据传入的字符串是否为yes/no返回Bit

///

///

///

public static int GetBitBool(string flg)

{

int str = 0;

switch (flg.ToLower())

{

case "yes":

str = 1;

break;

case "no":

str = 0;

break;

default:

break;

}

return str;

}

#endregion

#region Html编码

///

/// HTML编码

///

///

///

public static string HtmlEncode(string strInput)

{

string str;

try

{

str = HttpContext.Current.Server.HtmlEncode(strInput);

}

catch

{

str = "error";

}

return str;

}

///

/// HTML解码

///

///

///

public static string HtmlDecode(string strInput)

{

string str;

try

{

str = HttpContext.Current.Server.HtmlDecode(strInput);

}

catch

{

str = "error";

}

return str;

}

#endregion

#region 检测一个字符符,是否在另一个字符中,存在,存在返回true,否则返回false

///

/// 检测一个字符符,是否在另一个字符中,存在,存在返回true,否则返回false

///

/// 原始字符串

/// 目标字符串

///

public static bool IsEnglish(string srcString, string aimString)

{

bool Rev = true;

string chr;

if (aimString == "" || aimString == null) return false;

for (int i = 0; i < aimString.Length; i++)

{

chr = aimString.Substring(i, 1);

if (srcString.IndexOf(chr) < 0)

{

return false;

break;

}

}

return Rev;

}

#endregion

#region 检测字符串中是否含有中文及中文长度

///

/// 检测字符串中是否含有中文及中文长度

///

/// 要检测的字符串

/// 中文字符串长度

public static int CnStringLength(string str)

{

ASCIIEncoding n = new ASCIIEncoding();

byte[] b = n.GetBytes(str);

int l = 0; // l 为字符串之实际长度

for (int i = 0; i <= b.Length - 1; i++)

{

if (b[i] == 63) //判断是否为汉字或全脚符号

{

l++;

}

}

return l;

}

#endregion

#region 取字符串右侧的几个字符

///

/// 取字符串右侧的几个字符

///

/// 字符串

/// 右侧的几个字符

///

public static string GetStrRight(string str, int length)

{

string Rev = "";

if (str.Length < length)

{

Rev = str;

}

else

{

Rev = str.Substring(str.Length - length, length);

}

return Rev;

}

#endregion

#region 替换右侧的字符串

///

/// 替换右侧的字符串

///

/// 字符串

/// 右侧的字符串

/// 要替换为的字符串

///

public static string RepStrRight(string str, string strsrc, string straim)

{

string Rev = "";

if (GetStrRight(str, strsrc.Length) != strsrc)

{

Rev = str;

}

else

{

Rev = str.Substring(0, str.Length - strsrc.Length).ToString() + straim.ToString();

}

return Rev;

}

#endregion

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值