C#基础·补丁

news2024/11/18 15:23:56

文章目录

  • 一 命名空间
  • 二字符串
    • 2.1 System.String类
    • 2.2 StringBuilder类
  • 三 正则表达式
    • 3.1 什么是正则表达式?
    • 3.2 查找举例
    • 3.3 重复描述字符举例
    • 3.4 反义字符
    • 3.5 基本语法元字符
    • 3.6 定位元字符
    • 3.7 择一匹配
    • 3.8 分组

一 命名空间

在这里插入图片描述

二字符串

  • 字符串类
    • System.String(string是这个类的别名)
    • System.Text.StringBuilder

2.1 System.String类

1. 创建字符串 string s="xxxxxxx";
2. 获取长度 s.Length();
3. 比较字符串是否一样 s=="xxxx"; s.CompareTo("xxxxx")
4. 字符串连接 s+="xxx";
5. 使用类似索引器的语法来获取字符串中的某个字符 stringName[index]
6. 替换 s.Replace("x","y"); 
7. 拆分 s.Splist("x");
8. SubString() 在字符串中检索给定位置的子字符串
9. ToLower()把字符串转换成小写形式
10. ToUpper()把字符串转换成大写形式
 11. Trim()删除首尾的空白
 12. Contact()方法,合并字符串- 静态方法
 13. CopyTo()方法,把字符串中指定的字符复制到一个数组中
 14. Format()方法,格式化字符串-静态方法
 15. Indexof()方法 获取字符串第一次出现某个给定字符串或者字符的位置
 16. INdexOfArry()方法
 17. Insert()把一个字符串实例插入到另外一个字符串实例的定制索引处
 18. Join()合并字符串数组,创建一个型字符串

在这里插入图片描述
在这里插入图片描述

2.2 StringBuilder类

  • StringBuilder类(位于System.Text命名空间下)
    1. 创建StringBuilder对象
    	StringBuilder sb=new StringBuilder("www.taikr.com”);
    	StringBuilder sb = new StringBuilder (20);
    	StringBuilder sb = new StringBuilder("www.devsiki.com"100);
    	关于StringBuilder对象创建的时候的内存占用
    
方法说明
Append()方法给当前字符串追加一个字符
Insert()追加特定格式的字符串
Remove()从当前字符串中删除字符
Replace()在当前字符串中,用某个字符或者字符串全部替换另一个字符或者字符串
ToString()把当前stringBuilder中存储的字符串,提取成一个不可变的字符串

三 正则表达式

3.1 什么是正则表达式?

  • 英文Regular Expression,是计算机科学的一个重要概念,她使用一种数学算法来解决计算机程序中的文本检索,匹配等问题,正则表达式语言是一种专门用于字符串处理的语言。在很多语言中都提供了对它的支持,c#也不例外,它可以帮我们解决下面的问题:
    1. 检索:通过正则表达式,从字符串中获取我们想要的部分
    2. 匹配:判断给定的字符串是否符合正则表达式的过滤逻辑
  • 正则表达式表述了一个字符串的书写规则
    判断用户输入的密码是否合法,判断用户输入的邮箱格式是否合法
  • 正则表达式的组成
    • 正则表达式就是由普通字符以及特殊字符(成为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。

不要识记,用的时候查就是了。

3.2 查找举例

 static void Main(string[] args)
        {
            //@是特殊字符失效;功能相当于转义字符
            Console.WriteLine(@"xxx\n");
            //\d代表任意一个数字 \D补集
            //*代表前面的字符可以有0个或者多个
            string s1 = "23432n";
            string s2 = "234234";
            Console.WriteLine(Regex.IsMatch(s1,@"\d*"));//true
            Console.WriteLine(Regex.IsMatch(s2,@"1*"));//true
            //^x代表以某个字符开头
            Console.WriteLine(Regex.IsMatch(s2,@"^2"));//true
            //$x代表以某个字符结尾
            Console.WriteLine(Regex.IsMatch(s2,@"$4"));//false
            //\w大小写字母 0-9 _ \W补集
            Console.WriteLine(Regex.IsMatch(s1,@"^\w*$"));//true
            //[] 定义一个字符集集合
            Console.WriteLine(Regex.IsMatch(s1,@"[234]"));//true
            //匹配a到g、x到z的字符 
            Console.WriteLine(Regex.IsMatch("e",@"[a-gx-z]"));//true
            //匹配a-g的补集 ^放到[]里,表示取反
            Console.WriteLine(Regex.IsMatch("e",@"[^a-g]"));//false
        }

在这里插入图片描述

3.3 重复描述字符举例

字符说明
{n}匹配前面的字符n次
{n,}匹配前面的字符n次及以上
{n,m}匹配前面的字符n到m次
重复零次或者一次
+重复一次或者更多
*重复0次或者更多

在这里插入图片描述

3.4 反义字符

在这里插入图片描述

3.5 基本语法元字符

在这里插入图片描述

3.6 定位元字符

在这里插入图片描述

3.7 择一匹配

在这里插入图片描述
在这里插入图片描述

3.8 分组

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/912.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

python数据分析之numpy

数据分析之Numpy 1、Numpy的数组对象及其索引 import numpy as npimport numpy as npanp.array([1,2,3,4]) print(a) bnp.array([2,3,4,5]) print(b)print(ab)产生数组 从列表产生数组: list_array[1,2,3,4] anp.array(list_array) print(a)从列表传入&#xff…

PCB设计很简单?生产问题才是考验工程师能力的标准!

BOM清单有误 SMT产线:物料封装怎么和PCB焊盘不一致呢?停线排查。 仓库:我是按照BOM清单发的物料。 硬件研发:哎,BOM整理时马虎了。 过孔焊盘问题 “ 连锡问题 产线维修:怎么这么多连锡导致不良的产品&…

【安信可NB-IoT模组EC系列应用笔记⑧】用NB-IoT模组EC系列了解LwM2M协议并接入云平台

文章目录前言一、测试准备1、硬件准备2、云平台准备二、云平台连接1.注册入网2.读取IMSI及IMEI3.利用IMSI及IMEI创建设备4.LwM2M连接云平台设备三、 数据互交1.ATMIPLNOTIFY 通知属性变化2.ATMIPLREADRSP 返回读取结果3.ATMIPLWRITERSP 发送写入结果4.ATMIPLEXECUTERSP 发送执行…

1.uniapp全局状态管理

概念:把多个组件之间共享数据抽离出来,通过一个“单例模式”进行管理 工具:具备全局状态管理的库 Vuex:全局状态管理中的库 步骤: 1.建立Store文件夹 2.建立index.js文件 3.在main.js中注册Vue插件 4.测试Vuex是否导入成功 …

面试面麻了,别再为难软件测试人员了···

前言 有不少技术友在测试群里讨论,近期的面试越来越难了,要背的八股文越来越多了,考察得越来越细,越来越底层,明摆着就是想让我们徒手造航母嘛!实在是太为难我们这些测试工程师了。 这不,为了帮大家节约时…

基于单片机的双足仿生运动机器人的设计

目录 1 概述 1 1.1 研究背景及意义 1 1.2 机器人的应用领域及发展现状 1 1.2.1 应用领域 1 1.2.2 发展现状 1 1.3 双足机器人设计要求 2 1.3.1 硬件部分 2 1.3.2 软件部分 2 2 系统方案设计 3 2.1 主控芯片选择 3 2.2 机器人自由度选择 3 2.3 驱动方案选择 3 2.4 双足机器人的步…

00后表示真干不过,部门新来的00后测试员已把我卷崩溃,想离职了...

在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&#x…

web安全之信息收集

💪💪 web安全之信息收集1.网络入口/信息1.1网络拓扑信息1.2 IP信息1.3线下网络2.域名信息2.1Whios2.2搜索引擎搜索2.3. 第三方查询2.4. ASN信息关联2.5. 域名相关性2.6. 网站信息利用2.7. HTTPS证书2.8. CDN2.9. 子域爆破3.端口信息3.1常见端口3.2端口扫…

具有现代设计和最新Bootstrap版本的数字市场HTML模板

DegMark是具有现代设计和最新Bootstrap版本的数字市场HTML模板。凭借优秀的设计很容易创建虚拟商品交易网站,比如图片素材在线交易,视频文件交易,代码交易等虚拟商品交易。 主要特色 Bootstrapv5 移动响应 FontAwesome图标 jQuery增强 …

metaRTC Visual Studio编译指南

概述 metaRTC windows版本提供qt和vs2019两种编译支持,vs2019编译工程支持从metaRTC6.0版本开始,qt编译在B站有视频教程。 metaRTC5 windows版编译教程_哔哩哔哩_bilibilimetartc5编译教程,windows版本只支持msvc,下载所带第三方库为msvc20…

生物信息-快速序列比对-edlib包安装与使用方法-python和dll

安装 下载:https://github.com/Martinsos/edlib cd build && cmake -D CMAKE_BUILD_TYPERelease .. && make升级cmake https://cmake.org/download/ 下载tar.gz包,我这里下载的是: 拷贝到 /home/xxx/app 下解压&#xff…

初识C#事件

文章目录一 事件1 抛砖引玉案例1.1工具人下楼案例1.1.1 ToolMan.cs1.1.2 LazyMan.cs1.1.3 Program.cs1.1.4 测试结果1.1.5 升级到事件二 委托和事件的区别和联系一 事件 1 抛砖引玉案例 订阅和发布机制 比如说,我要下楼去吃饭,正常情况下我会问一下室友…

设计模式之适配器模式

设计模式之适配器模式 文章目录设计模式之适配器模式1. 定义2. 类型3. 场景4. 优点5. 缺点6. 适配器扩展6. 相关适配器模式7. coding7.1 被 适配者方法7.2 接口7.3 接口的实现7.4 适配者适配被适配者达到Target 目标7.5 类适配器的实现方式,其他的都不变8. 源码解析…

【Django】REST_Framework框架——序列化器serializers源码解析

一、序列化器类——Serializer 1、序列化器的作用 序列化器的使用分两个阶段: 1、在客户端请求时,使用序列化器可以完成对数据的反序列化(将字典格式的数据转化为模型对象)。 2、在服务器响应时,使用序列化器可以完…

网络原理——No.4 传输层_TCP协议中的延迟应答, 捎带应答, 面向字节流与TCP的异常处理

JavaEE传送门JavaEE 网络原理——No.2 传输层_TCP的连接管理 网络原理——No.3 传输层_TCP的滑动窗口, 流量控制与拥塞控制 目录延迟应答捎带应答面向字节流粘包问题TCP 中的异常处理(连接异常)TCP 和 UDP 的应用场景延迟应答 一种提高传输效率的机制, 又是基于流量控制, 来引…

Appinventor——蓝牙app(蓝牙遥控器、串口助手、温湿度显示、切换界面蓝牙依旧保持连接)

App Inventor由谷歌实验室开发,移交麻省理工学院,是一款图形化编程环境,不需要复杂的变成语言,采用搭积木的方式编程,只需将组件拖入即可,简直就是不爱编程党的超级福音 本文搭建了一个蓝牙app&#xff0c…

【CSS】CSS基础认知【CSS基础知识详解】

🌸大家好,我是花无缺,一枚热爱生活的新时代青年,感谢你的阅读🥰~ 👨‍💻个人主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专…

女朋友说她累了之后依然在线,于是20行代码写了个小工具康康发生了什么

近发现女朋友一到晚上总是很忙的样子, 每晚匆匆忙忙道过晚安就说自己累了去睡觉。 是我哪里做的不对吗… 睡就睡了,可是,QQ头像却会偶尔亮起来, 我非常担心,是不是账号被盗了呢? 然后,就想帮…

Django全家桶

Django框架从入门到高级 (一)Django入门 Web应用 详细地址见:https://blog.csdn.net/DiligentGG/article/details/126606099?spm1001.2014.3001.5501 Web框架本质 web框架本质上可以看成是一个功能强大的socket服务端,用户的…

Android专有GitHook完结篇,发布到npm

系列文章目录 Android打造专有hook,让不规范的代码扼杀在萌芽之中 Android打造专有hook第二篇,走进规范第一步 Android打造专有Hook第三篇,实战全量代码规范检查 Android打造专有Hook第四篇,实战增量代码规范检查 Hello啊各位…