文档章节

学用 ASP.Net 之 "字符串" (3): string 类的非扩展方法

涂孟超
 涂孟超
发布于 2014/09/26 15:32
字数 1354
阅读 2
收藏 0

string 类的非扩展成员:
/* 类方法 */
string.Compare;            //对比, 返回 1、0 或 -1
string.CompareOrdinal;     //对比, 返回序号差
string.Concat;             //合并
string.Copy;               //复制
string.Equals;             //是否同值
string.Format;             //格式化输出
string.Intern;             //
string.IsInterned;         //
string.IsNullOrEmpty;      //是否是 null 或 Empty
string.IsNullOrWhiteSpace; //是否是 null 或 Empty 或空白字符
string.Join;               //连接
string.ReferenceEquals;    //是否是相同的实例, 继承自 Object

/* 变量 */
string.Empty; // 空字符串, 同 ""

/* 属性 */
Length;       //

/* 对象方法 */
Clone;            //引用
CompareTo;        //
Contains;         //是否包含
CopyTo;           //复制部分到字符数组
EndsWith;         //尾匹配
Equals;           //是否同值
GetEnumerator;    //获取枚举器
GetHashCode;      //
GetType;          //
GetTypeCode;      //
IndexOf;          //查找
IndexOfAny;       //根据字符数组查找
Insert;           //插入
IsNormalized;     //
LastIndexOf;      //从右边开始查找
LastIndexOfAny;   //根据字符数组从右边开始查找
Normalize;        //
PadLeft;          //从左边添加空格或其它字符
PadRight;         //从右边添加空格或其它字符
Remove;           //移除
Replace;          //替换
Split;            //分割
StartsWith;       //首匹配
Substring;        //截取
ToLower;          //转小写
ToLowerInvariant; //转小写, 使用区域大小写规则
ToString;         //
ToUpper;          //转大写
ToUpperInvariant; //转大写, 使用区域大小写规则
Trim;             //删左右空白
TrimEnd;          //删右空白
TrimStart;        //删左空白


大小写转换:
protected void Button1_Click(object sender, EventArgs e)
{
    TextBox1.TextMode = TextBoxMode.MultiLine;

    string str = "Asp.Net", s1, s2, s3, s4;
    s1 = str.ToUpper();          //ASP.NET
    s2 = str.ToUpperInvariant(); //ASP.NET
    s3 = str.ToLower();          //asp.net
    s4 = str.ToLowerInvariant(); //asp.net
    TextBox1.Text = string.Concat(s1 + "\n" + s2 + "\n" + s3 + "\n" + s4);
}


添加或删除空白:
protected void Button1_Click(object sender, EventArgs e)
{
    string str, s1, s2, s3, s4, s5, s6, s7, r = "\n";
    str = "Asp";
    s1 = '>' + str.PadLeft(str.Length + 4) + '<';  //>    Asp<
    s2 = '>' + str.PadRight(str.Length + 4) + '<'; //>Asp    <
    s3 = '>' + str.PadLeft(7, '*') + '<';          //>****Asp<
    s4 = '>' + str.PadRight(7, '*') + '<';         //>Asp****<

    str = "    Asp    ";
    s5 = '>' + str.TrimStart() + '<'; //>Asp    <
    s6 = '>' + str.TrimEnd() + '<';   //>    Asp<
    s7 = '>' + str.Trim() + '<';      //>Asp<
    TextBox1.Text = string.Concat(s1 + r + s2 + r + s3 + r + s4 + r + s5 + r + s6 + r + s7);
}


截取:
protected void Button1_Click(object sender, EventArgs e)
{
    string str, s1, s2, r = "\n";
    str = "123456789";
    s1 = str.Substring(2);    //3456789
    s2 = str.Substring(2, 4); //3456
    TextBox1.Text = string.Concat(s1 + r + s2);
}


分割:
protected void Button1_Click(object sender, EventArgs e)
{
    string str, r = "\n";
    str = "1:2-3|4:5-6||7:8-9";

    string[] arr1 = str.Split('|');
    TextBox1.Text += string.Join(" / ", arr1) + r; //1:2-3 / 4:5-6 /  / 7:8-9 /

    string[] arr2 = str.Split('|', ':');
    TextBox1.Text += string.Join(" / ", arr2) + r; //1 / 2-3 / 4 / 5-6 /  / 7 / 8-9 / 

    string[] arr3 = str.Split('|', ':', '-');
    TextBox1.Text += string.Join(" / ", arr3) + r; //1 / 2 / 3 / 4 / 5 / 6 /  / 7 / 8 / 9 / 

    string[] arr4 = str.Split(new char[] { '|', ':', '-' });
    TextBox1.Text += string.Join(" / ", arr4) + r; //1 / 2 / 3 / 4 / 5 / 6 /  / 7 / 8 / 9 / 

    char[] cs = { '|', ':', '-' };

    string[] arr5 = str.Split(cs);
    TextBox1.Text += string.Join(" / ", arr5) + r; //1 / 2 / 3 / 4 / 5 / 6 /  / 7 / 8 / 9 / 

    string[] arr6 = str.Split(cs, 3);
    TextBox1.Text += string.Join(" / ", arr6) + r; //1 / 2 / 3|4:5-6||7:8-9 / 

    string[] arr7 = str.Split(cs, StringSplitOptions.RemoveEmptyEntries);
    TextBox1.Text += string.Join(" / ", arr7) + r; //1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 

    string[] arr8 = str.Split(cs, int.MaxValue, StringSplitOptions.RemoveEmptyEntries);
    TextBox1.Text += string.Join(" / ", arr8) + r; //1 / 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 

    string[] arr9 = str.Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
    TextBox1.Text += string.Join(" / ", arr9) + r; //1:2-3 / 4:5-6 / 7:8-9 / 
}


替换:
protected void Button1_Click(object sender, EventArgs e)
{
    string str, r = "\n", s1, s2;
    str = "Asp.Net 3.5";
    s1 = str.Replace('.', '-');     //Asp-Net 3-5
    s2 = str.Replace("3.5", "4.0"); //Asp.Net 4.0

    TextBox1.Text = string.Concat(s1, r, s2);
}


插入与移除:
protected void Button1_Click(object sender, EventArgs e)
{
    string str, r = "\n", s1, s2, s3;
    str = "Asp 3.5";
    s1 = str.Insert(3, ".Net"); //Asp.Net 3.5
    s2 = str.Remove(3);         //Asp
    s3 = str.Remove(0, 4);      //3.5

    TextBox1.Text = string.Concat(s1, r, s2, r, s3);
}


查找:
protected void Button1_Click(object sender, EventArgs e)
{
    string str = "Asp.Net 3.5";
    int n1, n2, n3, n4, n5, n6, n7;

    n1 = str.IndexOf('.');     //3
    n2 = str.LastIndexOf('.'); //9
    n3 = str.IndexOf('.', 4);  //9
    n4 = str.IndexOf("NET");   //-1
    n5 = str.IndexOf("NET", StringComparison.CurrentCultureIgnoreCase); //4

    n6 = str.IndexOfAny(new char[] {'3', '5'});       //8
    n7 = str.LastIndexOfAny(new char[] { '3', '5' }); //10

    TextBox1.Text = string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}", n1, n2, n3, n4, n5, n6, n7);
}


是否包含:
protected void Button1_Click(object sender, EventArgs e)
{
    string str = "Asp.Net 3.5";
    bool b1, b2, b3;

    b1 = str.Contains('S');   //False
    b2 = str.Contains('s');   //True
    b3 = str.Contains("Net"); //True

    TextBox1.Text = string.Format("{0}\n{1}\n{2}", b1, b2, b3);
}


首尾匹配:
protected void Button1_Click(object sender, EventArgs e)
{
    string str = "Asp.Net 3.5";
    bool b1, b2, b3, b4;

    b1 = str.StartsWith("asp");             //False
    b2 = str.StartsWith("asp", StringComparison.CurrentCultureIgnoreCase); //True
    b3 = str.StartsWith("asp", true, null); //True

    b4 = str.EndsWith("5");                 //True

    TextBox1.Text = string.Format("{0}\n{1}\n{2}\n{3}", b1, b2, b3, b4);
}


对比:
protected void Button1_Click(object sender, EventArgs e)
{
    string str1 = "1001ABC";
    string str2 = "1001abc";
    int n1, n2, n3, n4, n5, n6, n7, n8, n9, n0;

    n1 = str1.CompareTo(str2); // 1
    n2 = str2.CompareTo(str1); //-1
    n3 = str1.CompareTo(str1); // 0

    n4 = string.Compare(str1, str2);          // 1
    n5 = string.Compare(str2, str1);          //-1
    n6 = string.Compare(str1, str2, true);    // 0
    n7 = string.Compare(str1, 0, str2, 0, 4); // 0

    n8 = string.CompareOrdinal(str1, str2);          //-32
    n9 = string.CompareOrdinal(str2, str1);          // 32
    n0 = string.CompareOrdinal(str1, 0, str2, 0, 4); // 0

    TextBox1.Text = string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}\n{7}\n{8}\n{9}", n1, n2, n3, n4, n5, n6, n7, n8, n9, n0);
}


是否相同:
protected void Button1_Click(object sender, EventArgs e)
{
    string str1 = "Asp.Net", str2 = "ASP.NET";
    bool b1, b2, b3, b4, b5, b6, b7;

    b1 = string.Equals(str1, str2);          //False
    b2 = string.Equals(str1, str2, StringComparison.CurrentCultureIgnoreCase); //True
    b3 = str1.Equals(str2);                  //False
    b4 = str1.Equals(str2, StringComparison.CurrentCultureIgnoreCase);         //True

    string str3 = str1;
    b5 = string.ReferenceEquals(str1, str3); //True

    str1 = str1.ToLower();
    str2 = str2.ToLower();
    b6 = str1 == str2;                       //True
    b7 = string.ReferenceEquals(str1, str2); //False

    TextBox1.Text = string.Format("{0}\n{1}\n{2}\n{3}\n{4}\n{5}\n{6}", b1, b2, b3, b4, b5, b6, b7);
}


复制与引用:
protected void Button1_Click(object sender, EventArgs e)
{
    string str1 = "abc";
    string str2 = string.Copy(str1);
    string str3 = (string)str1.Clone();

    bool b1 = string.ReferenceEquals(str1, str2); //False
    bool b2 = string.ReferenceEquals(str1, str3); //True

    TextBox1.Text = string.Format("{0}\n{1}", b1, b2);
}


复制部分到字符数组:
protected void Button1_Click(object sender, EventArgs e)
{
    char[] cs = { '1', '2', '3', '4', '5', '6', '7', '8', '9' };
    string str = "ABCDEFG";

    str.CopyTo(1, cs, 3, 2);
    TextBox1.Text = string.Join("", cs); // 123BC6789
}


是否为空:
protected void Button1_Click(object sender, EventArgs e)
{
    bool b1, b2, b3, b4, b5;

    b1 = string.IsNullOrEmpty(null);         //True
    b2 = string.IsNullOrEmpty(string.Empty); //True
    b3 = string.IsNullOrEmpty("");           //True
    b4 = string.IsNullOrWhiteSpace("   ");   //True
    b5 = string.IsNullOrWhiteSpace("123");   //False

    TextBox1.Text = string.Format("{0}\n{1}\n{2}\n{3}\n{4}", b1, b2, b3, b4, b5);
}


枚举器:
protected void Button1_Click(object sender, EventArgs e)
{
    // 需 using System.Collections;
    string str = "Asp.Net 3.5";
    IEnumerator Enum = str.GetEnumerator();
    while (Enum.MoveNext()) 
    {
        TextBox1.Text += string.Format("{0}|", Enum.Current); //A|s|p|.|N|e|t| |3|.|5|
    }
}


连接与串联:
protected void Button1_Click(object sender, EventArgs e)
{
    string str;
    str = string.Concat("Asp", '.', "Net", "\x20", 3, '.', 5); //Asp.Net 3.5
    TextBox1.Text += str + "\n";

    int[] nArr = { 1, 3, 2, 4, 3, 5 };
    str = string.Join("*", nArr); //1*3*2*4*3*5
    TextBox1.Text += str + "\n";

    str = "Asp.Net";
    str = string.Join("|", str.ToArray()); //A|s|p|.|N|e|t
    TextBox1.Text += str + "\n";

    string[] sArr = { "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" };
    str = string.Join("; ", sArr, 1, 3);   //two; three; four
    TextBox1.Text += str + "\n"; 
}

本文转载自:http://www.cnblogs.com/del/archive/2010/12/30/1921449.html

涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
Asp.Net Core 2.0 项目实战(8)Core下缓存操作、序列化操作、JSON操作等Helper集合类

Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Net Core 2.0 项目实战(3)NCMVC角色权限管理前...

郑州-在路上
2018/04/12
0
0
ASP.NET验证控件学习总结与正则表达式学习入门

【ASP.NET】基础补习之验证控件 在做Web应用程序的时候,因为用户有可能输入各式各样的信息,经常需要大量的数据验证,如果交给服务器去验证的话,无疑会增加服务器的压力,而且也容易造成程...

长平狐
2013/01/06
2.9K
0
Spring.net 学习笔记之ASP.NET底层架构

进入底层 这篇文章以非常底层的视角讲述了Web请求(request)在ASP.NET框架中是如何流转的,从Web服务器,通过ISAPI直到请求处理器(handler)和你的代码.看看在幕后都发生了些什么,不要再把ASP...

青夜之衫
2017/12/05
0
0
Spring.net 学习笔记之ASP.NET底层架构

进入底层 这篇文章以非常底层的视角讲述了Web请求(request)在ASP.NET框架中是如何流转的,从Web服务器,通过ISAPI直到请求处理器(handler)和你的代码.看看在幕后都发生了些什么,不要再把ASP...

青夜之衫
2017/12/05
0
0
Asp.Net Core 2.0 项目实战(6)Redis配置、封装帮助类RedisHelper及使用实例

Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Net Core 2.0 项目实战(3)NCMVC角色权限管理前...

郑州-在路上
2018/05/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
今天
5
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
9
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
12
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
11
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部