字符串类库的解析

例子:string example = "hello,world";

1、字符串的属性:Length :用户获取字符串的长度 :很多时候的作用是判断字符串的长度是否为零从而判断已知对象是否存在

Response.Write(example.Length);  长度为11,注:下标为10,但长度是从1开始计算

2、增加字符串的方法:

a:Insert();  注:必须传入两个参数,第一个参数是从某个位置开始插入进去,第二个参数是插入进去的内容

Response.Write(example.Insert(11,",how do you do!")); 输出结果为 hello,world,how do you do!

b:Replace(); 注:需要传入两个参数,第一个参数是查找字符串中的某个将要替换的字符,第一个参数是将要替换成的的字符

Response.Write(example.Replace("world","Provence")); 输出结果为:hello,Provence

c: string.Join();  注:需要传入两个参数,第一个参数是用某个字符串分割连接,第二个参数是一个数组名

d:运算符 + 号

3、删除字符串的方法:

a:Remove(); 注:可以传一个参数,也可以传两个参数;传一个参数代表删除从这个下标起的后面所有字符,传两个参数代表删除从这个下标起个的几个字符

Response.Write(example.Remove(5));  结果为 : hello

Response.Write(example.Remove(0,6)); 结果为 : world

b:Substring();  注:可以传一个参数,也可以传两个参数;传一个参数代表截取从这个下标起的后面所有字符,传两个参数代表截取从这个下标起个的几个字符

Response.Write(example.Substring(5)); 结果为 : ,world

Response.Write(example.Substring(0,6)); 结果为 : hello,

c:Trim(); 注:可传入一个数组 也可不传入任何参数  作用:去除字符串中的空格

TrimEnd();  去除字符串尾部的空格

TrimStart();  去除字符串头部的空格

4、字符串修改的方法:

a:ToUpper(); 将所有字符串转换成大写

Response.Write(example.ToUpper());  输出结果为 :HOLLE,WORLD

ToLower();  将所有字符串转换为小写

Response.Write(example.ToLower());  输出结果为 :"hello,world

b:ToCharArray();

5、字符串查询的方法:

a:IndexOf(); 注:传一个参数如果查找到了返回该字符的下标,没有则返回 -1

Response.Write(example.IndexOf("d"));  返回下标为 : 10

b:LastIndexOf();  注:最后查询的索引位置开始查找

Response.Write(example.LastIndexOf("h")); 返回下标为 :0

c:LastIndexOfAny(); //不懂

d:EndsWith(); 查询一个字符串尾部有没有这个字符,有则返回true,无则false

    Response.Write(example.EndsWith("h"));  返回 false

e:StractsWith(); 查询一个字符串头部有没有这个字符,有则返回true,无则false

Response.Write(example.StractsWith("h"));  返回 true

f: Equals(); 判断有没有这个字符串,有则返回true,无则false

Response.Write(example.Equals("h"));  返回 false

Response.Write(example.Equals("hello,world"));  返回 true

g:string.Equals();  比较两个字符串是否相同,同则返回true,不同则false

Response.Write(string.Equals("d","d"));  返回 true

Response.Write(string.Equals("d","f"));  返回false

h:string.Compare(); 比较两个字符串之间的大小  返回 1、0、-1

Response.Write(string.Compare(a,b));   a > b 返回 1

Response.Write(string.Compare(a, b));   a = b 返回 0

Response.Write(string.Compare(a, b));   a < b 返回 -1

6、拼接字符串  需要引入 using System.Text;

a:StringBuilder();

StringBuilder sb= new StringBuilder();

sb.Append("a");

sb.Append("b");

sb.Append("c");

Response.Write(sb.ToString());  //输出 abc

7、格式化格式化(静态方法Format)

Console.WriteLine(string.Format("{0} + {1} = {2}", 1, 2, 1+2));
         Console.WriteLine(string.Format("{0} / {1} = {2:0.000}", 1, 3, 1.00/3.00));
         Console.WriteLine(string.Format("{0:yyyy年MM月dd日}", DateTime.Now));

8、分割为字符串数组(Split)——互逆操作:联合一个字符串静态方法Join(seperator,arr[])
         s ="AA,BB,CC,DD";
         string[] arr1 = s.Split(‘,‘); // 以‘,‘字符对字符串进行分割,返回字符串数组
         Console.WriteLine(arr1[0]); // 输出"AA"
         Console.WriteLine(arr1[1]); // 输出"BB"
         Console.WriteLine(arr1[2]); // 输出"CC"
         Console.WriteLine(arr1[3]); // 输出"DD"
         Console.WriteLine();

s ="AA--BB--CC--DD";
         string[] arr2 = s.Replace("--", "-").Split(‘-‘); // 以字符串进行分割的技巧:先把字符串"--"替换为单个字符"-",然后以‘-‘字符对字符串进行分割,返回字符串数组
         Console.WriteLine(arr2[0]); // 输出"AA"
         Console.WriteLine(arr2[1]); // 输出"BB"
         Console.WriteLine(arr2[2]); // 输出"CC"
         Console.WriteLine(arr2[3]); // 输出"DD"
         Console.WriteLine();

9、连接成一个字符串(静态方法Concat、静态方法Join和实例方法StringBuilder.Append)
         s ="A,B,C,D";
         string[] arr3 = s.Split(‘,‘); // arr = {"A","B","C","D"}

         Console.WriteLine(string.Concat(arr3)); // 将一个字符串数组连接成一个字符串,输出"ABCD"

Console.WriteLine(string.Join(",", arr3)); // 以","作为分割符号将一个字符串数组连接成一个字符串,输出"A,B,C,D"

StringBuilder sb =new StringBuilder(); // 声明一个字符串构造器实例
         sb.Append("A"); // 使用字符串构造器连接字符串能获得更高的性能
         sb.Append(‘B‘);
         Console.WriteLine(sb.ToString());// 输出"AB"

时间: 2024-07-29 20:44:57

字符串类库的解析的相关文章

jcSQL词法分析器对字符串token的解析

上星期写完词法分析器的时候,曾遇上一个无关紧要却X疼的问题.毕竟是第一次完整地写整个语言的编译器(暂且这么叫着吧,解释器更靠谱),由于经验不足,在字符串解析这一块驻足了两天才解决掉,这里记录下来供以后参考.哦对了,之所以想自己手写词法分析器,并不是我不知道有自动工具可以自动生成,而是我不会用,嗯,果然高冷. 词法分析器的作用简而言之就是将语言分割成一个一个独立的词法单元(单词),并赋予一定的类型.(如果不了解其作用,建议参考词法分析) 例如: a = 3 ; 我们就可以将其分课程一个个有意义的单

Python-Json字符串和XML解析

Python-json字符串和xml解析 JSON:JavaScript Object Notation(JavaScript 对象表示法) JSON是存储和交换文本信息的语法,类似XML JSON比XML更小,更快,更易解析. 1.JSON语法与语法规则 JSON语法是JavaScript语法的子集. JSON语法是JavaScript对象表示语法的子集. 数据在名称/值对中 数据由逗号分隔 花括号保存对象 方括号保存数组 1.1:JSON对象 JSON对象是保存在花括号中的.对象可以包含多个

php前端传过来的字符串在后台解析成数组 同时批量添加

//前端页面代码 获取多行的obj function addBedType() { var obj = document.getElementsByName('type_name'); var duoxuan = ''; for (var i = 0; i < obj.length; i++) { duoxuan += obj[i].value + ',';//如果选中,将value添加到变量duoxuan中 //alert(duoxuan);} if (duoxuan.length < 1)

C语言之字符串典型例题解析

今天又遇见几个好题,和以前的一些凑一块写一篇文章,作为我延迟去自习室的一个借口吧. 首先是第一题 1 int fun(char* s){ 2 char* t = s; 3 while(*t++); 4 return t-s; 5 } 6 fun函数的功能是_______ 7 比较两个字符串的大小 8 计算s所指字符串占用内存的大小 9 技术s所指字符串的长度 10 将s所指字符串复制到字符串t中 题目有四个选项,为什么我会选这个题呢,因为自己在面试C++的岗位中第一次遇见,印象里好像是写错了,然

ajax查询数据库,服务器传回json字符串,js解析json

服务器端获得要查询的东西,查询数据库,将查询的信息,以json字符串的形式返回给浏览器 public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String departmentID=request.getParameter("departmentID"); DataBaseHandle dataBaseHandl

Memcached中对象反序列化和json字符串用jackson解析成对象的比较

如果项目已经发布,如果临时想对某个在Memcached中的key修改值,那么以对象形式存储的话,将很难修改,但如果以字符串形式存储,通过json解析成对象的话,则会方便很多,因为通过界面往Memcached 添加字符串值是很简单的. 现在来比较一下这两种方式在时间消耗方面的差异: package bean; import java.io.Serializable; public class User implements Serializable{ /** * 序列号 */ private st

Python之字符串小代码解析

本篇只是拿一段代码来对python中的字符串的一些使用做解释,来让大家更加了解python Python 3.4.0 (v3.4.0:04f714765c13, Mar 16 2014, 19:25:23) [MSC v.1600 64 bit (AMD64)] on win32 Type "copyright", "credits" or "license()" for more information. >>> pystr=

php 中文字符串截取方法解析

用PHP函数substr截取中文字符可能会出现乱码,主要是substr可能硬生生的将一个中文字符“锯”成两半.解决办法: 1.使用mbstring扩展库的mb_substr截取就不会出现乱码了. 2.自己书写截取函数,但效率不如用mbstring扩展库来得高. 3.如果仅是为了输出截取的串,可用如下方式实现:substr($str, 0, 30).chr(0). substr()函数可以分割文字,但要分割的文字如果包括中文字符往往会遇到问题,这时可以用mb_substr()/mb_strcut这

后台给前台传JSON字符串,前台解析并拼接显示

后台传JSON 1 public class CourseType : IHttpHandler 2 { 3 Epoint.PeiXun.Bizlogic.BLL.CourseLibrary.PX_CourseType.B_PX_CourseType b_coursetype = new Epoint.PeiXun.Bizlogic.BLL.CourseLibrary.PX_CourseType.B_PX_CourseType(); 4 5 List<CourseTypeData> list_