学习记录,正则表达式, 隐式转换

正则表达式

\\:表示正则表达式

W: 表示一个非字(不是一个字,例如:空格,逗号,句号)

W+: 多个非字

基本组成部分

1.字符字面量:

普通字符:在正则表达式中,大多数普通字符(如字母、数字等)匹配它们自身。

元字符(Metacharacters):有些字符具有特殊含义,这些被称为元字符。

2.字符类:

字符类。包括单个字符和字符范围。eg:'a'匹配字符'a','[abc]'匹配'a','b',或者'c'中的任意一个字符,'[a-z]'匹配从'a'到'z'的任意一个小写字母。方括号表示字符类,用于匹配其中的任意一个字符。

3.量词:

用于指定前面的元素(字符、字符类等)出现的次数。

4.分组:

用括号()进行分组。分组有多种用途,例如可以对分组应用量词,如(ab)+会匹配ab、abab、ababab等。

5.边界匹配器:

^:匹配输入的开头。例如^abc匹配以abc开头的字符串。

:匹配输入的结尾。例如abc匹配以abc结尾的字符串。

\b:匹配单词边界。例如\bcat\b匹配独立的单词cat,而不会匹配scatter中的cat部分。

|-------|----------------------|-------------------|---------------------------|
| 单字符 | 大多数字符匹配自身 | 正则表达式abc,文本abc | a匹配a,b匹配b,c匹配c |
| 方括号 | [ ]定义字符类,匹配其余字符 | [abc],文本a,b或c | [abc]能匹配a,b或c |
| 排除字符类 | [ ]开头加^,匹配其余字符 | [^abc],文本d | [^abc]匹配除a,b,c之外的字符,如d |
| . | 匹配除换行外单个字符 | a.c,文本abc、a&c等 | a.c可匹配多种,只要中间是一非换行字符 |
| \d | 等价[0-9],匹配数字 | \d{3},文本123、456 | \d{3}匹配连续3个数字 |
| \D | 等价[^0-9],匹配非字符 | \D+文本abc | \D+匹配至少一个非修饰字符,如abc |
| \w | 等价[a-zA-Z-9_],匹配其他 | \W,文本& | \W匹配非字母等字符,如& |
| \s | 匹配空白字符 | a\sb,文本ab | a\sb匹配含空白字符串 |
| \S | 匹配非空白字符 | \S+,文本abc | \S+匹配至少一个非空白字符,如abc |
| * | 匹配前面0次或多次 | a*,文本" ",a,aa等 | a*可匹配空、a及多个a |
| + | 匹配前面至少1次 | a+,文本a、aa等 | a+匹配a及多个a,不匹配空 |
| ? | 匹配前面最多1次 | a?,文本" ",a | a?匹配空或a |
| {n} | 匹配前面恰好n次 | a{3},文本aaa | a{3}匹配aaa |
| {n,} | 匹配前面至少n次 | a{2,},文本aa,aaa等 | a{2,}匹配多个a,至少2个 |
| {n,m} | 匹配前面n到m次 | a{1,3},文本a,aa,aaa | a{1,3}匹配1到3个a |

应用场景:
1.找到符合要求的字串
2.判断给的字符串是否符合要求
3.替换

隐式转换

自动将一种类型的值转换为另一种类型的值。是单个参数的方法。

相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习
im_AMBER4 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J4 天前
从“Hello World“ 开始 C++
c语言·c++·学习