class Program
{
static void Main(string[] args)
{
string str = "Hello World!";
int i = ;
//Substring()在C#中有两个重载函数 Console.WriteLine("------------------Substring()两种截取--------------");
/*
*1、Substring(int strstIndex)
*
* 传的参数必须大于等于0 且小于等于字符串的长度
* 如果参数大于字符串的长度的话则系统会抛出ArgumentOutOfRange异常。提示:"startIndex 不能大于字符串长度。参数名: startIndex"
* 如果参数小于0的话则系统会抛出ArgumentOutOfRange异常。提示:"StartIndex 不能小于 0。参数名: startIndex"
* 如果传的值正确的话,则就会以这个位置为起始,截取剩下所有的字符串
*/
string str1 = str.Substring(); /*
*2、Substring(int strstIndex,int length)
*
* 传的strstIndex参数必须大于等于0 且小于等于字符串的长度
* 如果strstIndex参数大于字符串的长度的话则系统会抛出ArgumentOutOfRange异常。提示:"startIndex 不能大于字符串长度。参数名: startIndex"
* 如果strstIndex参数小于0的话则系统会抛出ArgumentOutOfRange异常。提示:"StartIndex 不能小于 0。参数名: startIndex"
* 传的length参数必须大于等于0 且小于等于 “字符串的长度-起始位置”
* 如果length参数大于“字符串的长度-起始位置”的话则系统会抛出ArgumentOutOfRange异常。提示:"索引和长度必须引用该字符串内的位置。参数名: length"
* 如果length参数小于0的话则系统会抛出ArgumentOutOfRange异常。提示:"长度不能小于 0。参数名: length"
*/
string str2 = str.Substring(, ); Console.WriteLine(str1);
Console.WriteLine(str2); Console.WriteLine("------------------常用的字符串截取--------------");
//1、截取字符串的前i个字段
string str3 = str.Substring(, i);
string str4 = str.Remove(i,str.Length - i); //2、去掉字符串的前i个字段
string str5 = str.Remove(, i);
string str6 = str.Substring(i); //3、从右边开始取i个字符
string str7 = str.Substring(str.Length - i);
string str8 = str.Remove(, str.Length - i); //4、从右边开始去掉i个字符:
string str9 = str.Substring(,str.Length - i);
string str10 = str.Remove(str.Length - i); Console.WriteLine(str3);
Console.WriteLine(str4);
Console.WriteLine(); Console.WriteLine(str5);
Console.WriteLine(str6);
Console.WriteLine(); Console.WriteLine(str7);
Console.WriteLine(str8);
Console.WriteLine(); Console.WriteLine(str9);
Console.WriteLine(str10);
Console.WriteLine(); Console.ReadLine();
}
}

运行结果:

------------------Substring()两种截取--------------
ello World!
ello
------------------常用的字符串截取--------------
Hell
Hell o World!
o World! rld!
rld! Hello Wo
Hello Wo

Substring详解的更多相关文章

  1. Hadoop MapReduce执行过程详解(带hadoop例子)

    https://my.oschina.net/itblog/blog/275294 摘要: 本文通过一个例子,详细介绍Hadoop 的 MapReduce过程. 分析MapReduce执行过程 Map ...

  2. mina框架详解

     转:http://blog.csdn.net/w13770269691/article/details/8614584 mina框架详解 分类: web2013-02-26 17:13 12651人 ...

  3. 详解Javascript的继承实现(二)

    上文<详解Javascript的继承实现>介绍了一个通用的继承库,基于该库,可以快速构建带继承关系和静态成员的javascript类,好使用也好理解,额外的好处是,如果所有类都用这种库来构 ...

  4. mysql存储过程详解

    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的S ...

  5. mysql中event的用法详解

    一.基本概念mysql5.1版本开始引进event概念.event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发.通过单独或调用存 ...

  6. MYSQL常用内置函数详解说明

    函数中可以将字段名当作变量来用,变量的值就是该列对应的所有值:在整理98在线字典数据时(http://zidian.98zw.com/),有这要一个需求,想从多音字duoyinzi字段值提取第一个拼音 ...

  7. 新手入门:史上最全Web端即时通讯技术原理详解

    前言 有关IM(InstantMessaging)聊天应用(如:微信,QQ).消息推送技术(如:现今移动端APP标配的消息推送模块)等即时通讯应用场景下,大多数都是桌面应用程序或者native应用较为 ...

  8. Java Class文件详解

    作者:禅楼望月(http://www.cnblogs.com/yaoyinglong) Java Class文件中包含以下信息: [+]view code ClassFile { u4 magic;  ...

  9. 原生JS:String对象详解

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

随机推荐

  1. 免费的 C/C++ 编译&解释 器列表

    摘自<C++编程网>,详细介绍请参考http://www.cpp-prog.com/2009/0520/118.html MicrosoftVisual C++ 2008 Express  ...

  2. 利用marquee对html页面文本滚动

    <marquee direction="up" style="width:200px;height:80px; " scrolldelay="3 ...

  3. 常规容器下SpringBootServletInitializer如何实现web.xml作用解析

    在之前的<使用jsp作为视图模板&常规部署>章节有过一个实践,需要启动类继承自SpringBootServletInitializer方可正常部署至常规tomcat下,其主要能够起 ...

  4. 如何在spring quartz类中拿到ServletContext

    ContextLoader.getCurrentWebApplicationContext().getServletContext() web.xml里加个: <listener> < ...

  5. 【28.57%】【codeforces 711E】ZS and The Birthday Paradox

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  6. BeforeFieldInit的小叙

    BeforeFieldInit是什么 上片的文章中我们看到了有静态构造函数,和没有静态构造函数,代码的执行顺序有着显著的区别.然后,我们反编译了下代码,发现了在类中有一个BeforeFieldInit ...

  7. 一个简易版的Function.prototype.bind实现

    重新看<JavaScript设计模式与开发实践>一书,第32页发现个简易版的Function.prototype.bind实现,非常容易理解,记录在这了. Function.prototy ...

  8. CMake 添加头文件目录,链接动态、静态库(添加子文件夹)

    CMake支持大写.小写.混合大小写的命令. 当编译一个需要第三方库的项目时,需要知道: 去哪找头文件(.h),-I(GCC) INCLUDE_DIRECTORIES() 去哪找库文件(.so/.dl ...

  9. CSS动作

    5.过渡 tansition  (由一个状态过渡到另外一个状态的过程)             transition            过渡                 参数1:        ...

  10. poi读取xlsx

    知道 大家都知道用poi读取xls  当时有时候 必需要读取xlsx  如今我把我做測试的demo分享给大家 package com.lt.main; import java.io.File; imp ...