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++网络编程方面的开源项目

    Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力. ...

  2. 一大波Java来袭(四)String类、StringBuilder类、StringBuffer类对照

    本文主要介绍String类.StringBuffer类.StringBuilder类的差别  : 一.概述 (一)String 字符串常量.可是它具有不可变性,就是一旦创建,对它进行的不论什么改动操作 ...

  3. BZOJ 2021 Usaco2010 Jan Cheese Towers 动态规划

    题目大意:全然背包.假设最顶端的物品重量≥k,那么以下的全部物品的重量变为原来的45 考虑一些物品装进背包,显然我要把全部重量大于≥k的物品中重量最小的那个放在最顶端.才干保证总重量最小 那么我们给物 ...

  4. 自绘实现半透明水晶按钮(继承CButton,设置BS_OWNERDRAW风格,覆盖DrawItem函数绘制按钮,把父窗口的背景复制到按钮上,实现视觉上的透明,最后通过AlphaBlend实现半透明)

    运行效果 实现方法 1.给按钮加上BS_OWNERDRAW样式2.重载DrawItem函数,在这里绘制按钮3.关键之处就是把父窗口的背景复制到按钮上,实现视觉上的透明4.最后通过AlphaBlend实 ...

  5. ag-admin部署使用心得

    开源地址:https://github.com/wxiaoqi/Spring-Cloud-AG-Admin(后端)https://gitee.com/geek_qi/AG-Admin-v2.0(后端) ...

  6. Apparatus, system, and method for automatically minimizing real-time task latency and maximizing non-real time task throughput

    An apparatus, system, and method are provided for automatically minimizing Real-Time (RT) task laten ...

  7. hexo主题选择和配置

    之前用next主题,发现文章标题都是h2,不利于seo,想着通过改模板改成h1的,发现很繁琐.今天发现,通过下载指定版本的next后,标题自动是h1的. 参考网页https://notes.iissn ...

  8. Linux的设备文件名与硬盘分区已经挂载点的关系

    以CentOS6.3为例. 选择的硬盘设备名是/dev/sda,即第一块STAT硬盘,然后在该硬盘分了3个主分区和1个扩展分区,设备名分别是/dev/sda1,/dev/sda2,/dev/sda3, ...

  9. 解决无法定位程序输入点SymEnumSymbols于动态链接库dbghelp.dll

    作者:朱金灿 来源:http://blog.csdn.net/clever101 下载一个源码,使用VS2008编译链接无问题,运行时出现一个错误:无法定位程序输入点SymEnumSymbols于动态 ...

  10. CUDA页锁定内存(Pinned Memory)

    对CUDA架构而言,主机端的内存被分为两种,一种是可分页内存(pageable memroy)和页锁定内存(page-lock或 pinned).可分页内存是由操作系统API malloc()在主机上 ...