c中截取字符串(java字符串replace用法)

C几种截取字符串的方法(splitSubstringReplaceremove)

大家好,又见面了,我是你们的朋友全栈君。

               

C#截图字符串常用的方法有 split 、Substring、Replace、remove等。

split的使用:  

1. Split( Char ()) 

    返回的字符串数组包含此实例中的子字符串(由指定 Unicode 字符数组的元素分隔)。

    根据单个分隔字符用split截取。 

    例如 复制代码代码如下: 

    string st=”GT123_1″; 

    string[] sArray=st.Split(‘_’);// 一定是单引 

    即可得到sArray[0]=”GT123″,sArray[1]=”1″; 

2.利用多个字符来分隔字符串 

    例如 复制代码代码如下: 

    string str = “GTAZB_JiangjBen_123”; 

    string[] sArray = str.Split(new char[2] { ‘j’, ‘_’ }); 

    foreach(string e in sArray) 

    { Console.WriteLine(e); } 

    得到sArray[0]=”GTAZB”,sArray[1]=”Jiang”,sArray[2]=”Ben”,sArray[3]=”123″; 

3.Split( String (), StringSplitOptions) 

   返回的字符串数组包含此字符串中的子字符串(由指定字符串数组的元素分隔)。参数指定是否返回空数组元素。             RemoveEmptyEntries表示要省略返回的数组中的空数组元素 

   根据字符串或字符串组来截取字符串 

   例如 复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   string[] sArray = str.Split( new string[]{“Ji”,”jB”}, StringSplitOptions.RemoveEmptyEntries); 

   foreach(string e in sArray) 

  { Console.WriteLine(e); } 

   得到sArray[0]=”GTAZB_”,sArray[1]=”ang”,sArray[2]=”en_123″; 

Substring的使用: 

1. Substring(Int32, Int32) 

   从此实例检索子字符串。子字符串从指定的字符位置开始且具有指定的长度。 

   提取字符串中的第i个字符开始的长度为j的字符串; 

   例如 复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   int start=3,length=8; 

   Console.WriteLine(str.Substring(start-1, length)); 

   输出得到AZB_Jian。 

2. Substring(Int32) 

   从此实例检索子字符串。子字符串从指定的字符位置开始。 

   提取字符串中右数长度为i的字符串 

   复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   string tSt; int i=5; 

   tSt = str.Substring(str.Length – i); 

   Console.WriteLine(tSt); 

   输出n_123; 

Replace的使用: 

1. Replace(String, String) 

   返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。 

   替换字符串中的特定字符串 

   复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   string tSt; 

   tSt = str.Replace(“123″,”321”); 

   Console.WriteLine(tSt); 

   输出GTAZB_JiangjBen_321 

2. 删除字符串中的特定字符串Jiangj 

   复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   string tSt; tSt = str.Replace(“Jiangj”,””); 

   Console.WriteLine(tSt); 

   输出GTAZB_Ben_123 

3. Replace(Char, Char) 

返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。 

下面的示例将一系列数字之间的空白替换为逗号,从而创建以逗号分隔的值列表。 

public static void Main() 

   string str = “1 2 3 4 5 6 7 8 9”; 

   Console.WriteLine(“Original string: \”{0}\””, str); 

   Console.WriteLine(“CSV string: \”{0}\””, str.Replace(‘ ‘, ‘,’)); 

}

输出:Original string: “1 2 3 4 5 6 7 8 9” 

      CSV string: “1,2,3,4,5,6,7,8,9” 

remove的使用: 

1. Remove(Int32, Int32) 

   从此实例中的指定位置开始删除指定数目的字符。 

   删除指定位置(第i个)的指定长度(length)的字符串 

   复制代码代码如下: 

   string str = “GTAZB_JiangjBen_123”; 

   int i=5,length=8; 

   str=str.remove(i, length); 

   console.writeline(str); 

   输出GTAZBen_123。 

2. Remove(Int32) 

   删除此字符串中从指定位置到最后位置的所有字符。 

   string s = “abc—def”; 

   Console.WriteLine(“{0}”, s.Remove(3)); 

   输出:abc

—————————————————————————————————————-

    public string[] Split(params char[] separator)

    Split 方法提取此字符串中的子字符串,这些子字符串由 separator 参数中的一个或多个字符串分隔,然后该方法将这些子字符串作为数组的元素返回。 Split 方法使用区分大小写的序号排序规则执行比较,从而查找分隔符。 

    Split 方法忽略 separator 的任何值为 Nothing 或空字符串 (“”) 的元素。 为了在 separator 中的字符串具有公共字符的情况下避免出现不明确的结果, Split 操作从实例值的开始进行到结尾,并匹配 separator 中与实例中的分隔符相等的第一个元素。 实例中子字符串的出现顺序优先于 separator 中元素的顺序。 例如,考虑值为“abcdef”的实例。如果 separator 中的第一个元素为“ef”,且第二个元素为“bcde”,则拆分操作的结果将是“a”和“f”。 这是因为先遇到实例中的子字符串“bcde”,且它匹配 separator 中的元素,然后才遇到子字符串“f”。 不过,如果 separator 的第一个元素为“bcd”,且第二个元素为“bc”,则拆分操作的结果将是“a”和“ef”。 这是因为“bcd”是 separator 中第一个与实例中的分隔符匹配的分隔符。 如果颠倒分隔符的顺序,使得第一个元素为“bc”且第二个元素为“bcd”,则结果将是“a”和“def”。 

性能注意事项 

    Split 方法为返回的数组对象分配内存,同时还为每一个数组元素分配一个 String 对象。 如果您的应用程序要求达到最佳性能,或者如果在您的应用程序中内存分配管理很关键,请考虑使用 IndexOf 或 IndexOfAny 方法,也可以选择使用 Compare 方法,在字符串中定位子字符串。 如果在分隔符字符处分割字符串,请使用 IndexOf 或 IndexOfAny 方法在字符串中定位分隔符字符。 如果在分隔符字符串处分割字符串,请使用 IndexOf 或IndexOfAny 方法定位分隔符字符串的第一个字符。 然后使用 Compare 方法确定第一个字符后面的字符是否等于分隔符字符串的其余字符。 此外,如果在多个 Split 方法调用中使用相同的字符集拆分字符串,请考虑创建一个数组并在每个方法调用中都引用该数组。 这可以极大地减少每个方法调用的额外系统开销。

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125418.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • zookeeper启动报错 ,无法加载主类_security与safe

    zookeeper启动报错 ,无法加载主类_security与safe最近在本机电脑上zookeeper集群,但是报错如下,哪位大佬知道怎么解决2020-07-1314:43:15,283[myid:]-INFO[main:QuorumPeerConfig@173]-Readingconfigurationfrom:/home/yangaoyu/software/zookeeper-3.6.1/bin/…/conf/zoo.cfg2020-07-1314:43:15,316[myid:]-INFO[main:QuorumPeerConfi

    2022年8月30日
    1
  • 激光SLAM入门学习笔记[通俗易懂]

    激光SLAM入门学习笔记[通俗易懂]激光SLAM入门学习笔记(持续更新)激光SLAM入门学习笔记(持续更新)一、推荐阅读书籍二、推荐公众号、知乎、博客1、公众号2、知乎3、博客三、推荐阅读论文&代码(参考泡泡机器人)2D激光SLAM3D激光SLAM1、LOAM(经典)2、A-LOAM(初学)3、LeGO-LOAM(进阶)4、Lio-mapping(进阶、LIO初学)5、hdl_graph_slam(入门)10、SC-LeGO-LOAM(应用推荐)激光SLAM入门学习笔记(持续更新)一、推荐阅读书籍视觉SLAM十四讲概率机器人

    2022年8月23日
    7
  • html5自动生成目录,JavaScript:自动生成博文目录导航

    html5自动生成目录,JavaScript:自动生成博文目录导航感谢孤傲苍狼分享了自动生成博文目录的方法,本文仅作存档使用。图1:效果预览CSS样式#TOCbar{font-size:12px;text-align:left;position:fixed;auto;height:auto;top:50px;right:0px;/*离页面顶部与右侧的距离*/}#TOCbarTab{float:left;30px;border:1px…

    2025年7月16日
    0
  • 免费空间推荐「建议收藏」

    免费空间推荐「建议收藏」免费空间使用googiehost免备案地址:

    2022年6月22日
    24
  • 台式计算机网线,台式电脑如何连接宽带_台式电脑如何连接网线

    台式计算机网线,台式电脑如何连接宽带_台式电脑如何连接网线2017-03-1121:36:28电脑直接拨号上网(有宽带账号和密码)或者自动获取IP(有帐号没密码)上方式设置见图2016-12-1013:29:30右击网上邻居,点属性,创建一个新的连接,按照下一步下一步的步骤就可以了,然后成功之后输入你的宽带号码和密码就可以了,如果你使用的是ASDL拨号的,你可以下一个宽带我世界,电信的话你…2016-12-2917:28:19方法如下1、第一,…

    2022年6月26日
    30
  • golang代理转发基础「建议收藏」

    golang代理转发基础「建议收藏」golang代理转发基础go标准库已经实现了一个反向代理工具,通过代理将客户端的请求转发到代理服务器。什么是反向代理?维基百科解释:”Incomputernetworks,areverseproxyisatypeofproxyserverthatretrievesresourcesonbehalfofaclientfromoneormore…

    2022年7月26日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号