C#中的字符串处理
C#中的字符串处理
是由多个单个字符组成的。字符串的关键字是string,而我们单个字符char型。也就是一个字符串可以分为很多个char的字符。注意 同时,我们在开发项目或者学习时。更多的操作不是数字也不是图片。而是我们要学习的字符串。
一、常用字符串有哪一些?
1. 获得字符串的长度,也就是字符串由几个字符组成的。string.Length
using System;
public class Test
{
public static void Main()
{
string str = "323dsdsda32sds";
//str字符串长度为:14
//表示字符串由14个字符组成
Console.WriteLine("str字符串长度为:"+str.Length);
Console.WriteLine("str字符串第一个字符是:"+str[0]);
Console.WriteLine("str字符串最后一个字符是:"+str[(str.Length-1)]);
//一个字符串可以使用下标来访问那么就可以使用循环
foreach( char i in str){
Console.WriteLine(i);
}
for(int i = 0; i < str.Length;i++){
Console.WriteLine(str[i]);
}
}
}
2. 查找字符串的字符
using System;
public class Test
{
public static void Main()
{
string str = "323dsdsd@a32sds";
//IndexOf进行查找字符时,如果没有找到则返回-1
//如果有找到,则返回查找字符所在的位置。
if(str.indexOf("@") != -1){
Console.WriteLine("查找字符所在位置是:"+str.indexOf("@"));
}else{
Console.WriteLine("查找字符不存在");
}
}
}
IndexOf和LastIndexOf一起使用
using System;
public class Test
{
public static void Main()
{
string str = "323dsdsd@a32sds";
int firstIndex = str.IndexOf("@");
int lastIndex = str.LastIndexOf("@");
if(firstIndex != -1){
if (firstIndex == lastIndex){
Console.WriteLine("只出现了一次");
}else{
Console.WriteLine("不只一次出现");
}
}else{
Console.WriteLine("没有找到查找字符");
}
}
}
**注意:**IndexOf()表示查找指定字符,如果有就直接返回字符串下标,不会往后查找。而LastIndexOf()则返回指定字符最一次出现的位置。
3.字符串中替换
using System;
public class Test
{
public static void Main()
{
//第一个@符号替换成_,第一个&替换成-
string str = "32@3dsdsd@a32&sds";
if(str.IndexOf("@") != -1){
str.Replace("@", "_");
}
if(str.IndexOf("&") != -1){
str.Replace("&","-");
}
Console.WriteLine(str);
}
}
4.字符串截取
a、Substring(指定位置);//从字符串中的指定位置开始截取到字符串结束
using System;
public class Test
{
public static void Main()
{
//从字符串中截想要的内容
//32@不是我想要的
string str = "32@3dsdsd@a32&sds";
string tempStr;
tempStr = str.SubString(2);
Console.WriteLine(tempStr);
}
}
5.字符串分割和拼接|Split and Join
using System;
public class Test
{
public static void Main()
{
//短语分为每个单词的字符串数组
string str = "The quick brown fox jumps over the lazy dog.";
//使用Split会返回一个数组
tmpData = str.Split(" ");
foreach(string item in tmpData){
Console.WriteLine(item);
}
//把数组按一定规则来拼接成一个字符串
string tmpStr = String.Join(" Hello ", tmpData);
Console.WriteLine(tmpStr);
//输出结果:The Hello quick Hello brown Hello fox Hello jumps Hello over Hello the Hello lazy Hello dog.
}
}
关于字符串的分割和拼接。Join是把一个数组按一定规则拼接一个字符串,而Split则是按一定规则把字符串分割成一个数组。
C#中的字符串处理的更多相关文章
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- 使用strings查看二进制文件中的字符串
使用strings查看二进制文件中的字符串 今天介绍的这个小工具叫做strings,它实现功能很简单,就是找出文件内容中的可打印字符串.所谓可打印字符串的涵义是,它的组成部分都是可打印字符,并且以nu ...
- 在 case 语句中使用字符串-转
http://www.cnblogs.com/del/archive/2008/07/08/1237856.html 非常遗憾 Delphi 的 case 语句不支持字符串, 但我觉得这也可能是基于效 ...
- 使用Microsoft Roslyn提取C#和VB.NET源代码中的字符串常量
Microsoft Roslyn是微软.NET“编译器即服务(Compiler as a Service)”的主要产品,它提供了开放的编译器API,并为源代码产生.分析和重构提供了新一代的语言对象模型 ...
- SQL Server中截取字符串常用函数
SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...
- 在文件夹中 的指定类型文件中 查找字符串(CodeBlocks+GCC编译,控制台程序,仅能在Windows上运行)
说明: 程序使用 io.h 中的 _findfirst 和 _findnext 函数遍历文件夹,故而程序只能在 Windows 下使用. 程序遍历当前文件夹,对其中的文件夹执行递归遍历.同时检查遍历到 ...
- 7.Java中的字符串
1.String的特性 特性一:不可变性 String s=new String("yangyun") s=s.toUpperCase(); 这里的s,s占用的空间是不一样的(地址 ...
- C# 利用占位符替换word中的字符串和添加图片
利用占位符替换word中的字符串和添加图片 ///<summary> /// 替换word模板文件内容,包括表格中内容 /// 调用如下:WordStr ...
- 使用C#程序处理PowerPoint文件中的字符串
最近, 有同事偶然发现Microsoft Office PowerPoint可以被看作是一个压缩包,然后通过WinRAR解压出来一组XML文件.解压出来的文件包括: 一个索引文件名称为:[Conte ...
- Java OOP中的字符串篇
字符串的三大特征: String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 一.定义 查看 API 会发现,String.St ...
随机推荐
- Web网页布局的主要方式
一.静态布局(static layout) 即传统Web设计,网页上的所有元素的尺寸一律使用px作为单位. 1.布局特点 不管浏览器尺寸具体是多少,网页布局始终按照最初写代码时的布局来显示.常规的pc ...
- JZOJ 3929. 【NOIP2014模拟11.6】创世纪
3929. [NOIP2014模拟11.6]创世纪 (Standard IO) Time Limits: 1000 ms Memory Limits: 65536 KB Description 上帝手 ...
- 安装ArchLinux时遇到的部分问题
目录 一.网络问题 1.安装刚开始时连接wifi 2.安装完桌面后 二.卸载gnome桌面 三.启动桌面(以kde桌面为例) 1.立即启动桌面(start , stop) 2.设置开启自启动 (ena ...
- 简述N种排序算法
排序算法概述 排序算法是程序员日常很常见的算法,基本上每天都会使用排序,在这里将进行一下总结. 排序算法大致可分为比较类排序和非比较类排序二种,其核心区别可以简单的理解为非比较类排序是对比较类排序之前 ...
- javascript的垃圾回收机制与内存管理
一.垃圾回收机制—GC Javascript具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,执行环境会负责管理代码执行过程中使用的内存. 原理:垃圾收集器会定期(周期性 ...
- (转)C++中的delete
转载自:http://blog.csdn.net/sparkliang/article/details/3670930 为了防止内存泄漏,每一个动态内存分配必须有一个等同相反的内存释放操作,delet ...
- 谈谈MySQL数据库索引
在分析MySQL数据库索引之前,很多小伙伴对数据结构中的树理解不够深刻.因此我们由浅入深一步步探讨树的演进过程,再一步步引出MySQL数据库索引底层数据结构. 一.二叉树 二叉查找树也称为有序二叉查找 ...
- 《JavaScript 模式》读书笔记(2)— 基本技巧3
这是基本技巧的最后一篇内容,这篇内容示例代码并不多.主要是概念比较多一点. 编码约定 确定并一致遵循约定比这个具体约定是什么更为重要. 一.缩进 无论是使用tab还是空格,只要是一致遵循的,是什么并不 ...
- 我的Keras使用总结(1)——Keras概述与常见问题整理
今天整理了自己所写的关于Keras的博客,有没发布的,有发布的,但是整体来说是有点乱的.上周有空,认真看了一周Keras的中文文档,稍有心得,整理于此.这里附上Keras官网地址: Keras英文文档 ...
- Natas7 Writeup(任意文件读取漏洞)
Natas7: 页面出现了两个选项,点击后跳转,观察url发现了page参数,猜测可能存在任意文件读取漏洞. 且源码给了提示,密码在/etc/natas_webpass/natas8 中. 将/etc ...