pythonre字符串为特定字符和数字组成
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pythonre字符串为特定字符和数字组成相关的知识,希望对你有一定的参考价值。
pythonre字符串为特定字符和数字组成我们讲一下字符串类型和数字类型,这两个Python中基本数据类型之间的转换。也就是说字符串类型可以转为数字类型,数字类型也可以转为字符串类型。
数据类型差异
对于不同的数据类型,代码的行为有所不同。如下图所示,图中的print(5 + 10)是数值计算,而print('5' + '10')是字符串连接。
如果将字符串类型和数据类型连接在一起,则会发生错误。
数字类型转换为字符串类型
数字类型转换为字符串类型需要用到str()函数。
str()函数:将对象转化为适于人阅读的形式。返回一个对象的string格式。
语法如下所示:
class str(object='')
object -- 对象
如下图所示,变量num是数字类型,我们使用str()函数将这个数字类型转换成了字符串类型。
字符串类型转换为数字类型
字符串类型转换为数字类型需要用到int() 函数。
int() 函数:用于将一个字符串或数字转换为整型。
语法如下所示:
class int(x, base=10)
x -- 字符串或数字
base -- 进制数,默认十进制
x -- 字符串或数字
base -- 进制数,默认十进制
如下图所示,str1是字符串类型,使用int()函数将这个字符串类型的变量转换成了整型,最后与10相加等于15。 参考技术A Python的re模块提供了一系列正则表达式,可以用来校验特定字符和数字组成的字符串。您可以使用re.search()函数查找特定字符和数字组成的字符串,以进行校验。
正则表达式
正则表达式:正则表达式是对字符串操作的一种逻辑公式,就是用实现定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
字符组:[字符组]
在同一位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示
字符分为很多类,比如数字、字母、标点等。
[0-9] | 匹配数字 |
[a-z] | 匹配小写字母 |
[A-Z] | 匹配大写字母 |
[a-zA-Z] | 匹配大小写字母 |
[a-zA-Z0-9] | 匹配大小写字母+数字 |
[a-zA-Z0-9_] | 匹配数字字母下划线 |
元字符:
元字符 | 匹配内容 |
. | 匹配除换行符以外的任意字符 |
w | 匹配字母或数字或下划线 |
s | 匹配任意的空白符(换行符、制表符、空格) |
d | 匹配数字 |
匹配一个换行符 | |
匹配一个制表符 | |
匹配一个单词的结尾或开头 | |
^ | 匹配字符串的开头 |
$ | 匹配字符串的结尾 |
W | 匹配非字母数字下换线 |
D | 匹配非数字 |
S | 匹配非空白符 |
a|b | 匹配字符a或字符b(将复杂的放在前面) |
() | 匹配括号内的表达式,也表示一个组 |
[...] | 匹配字符组红的字符 |
[^...] | 匹配除了字符组中字符的所有字符 |
量词:
量词 | 用法说明 |
{n} | 重复n次 |
{n,} | 重复n次或多次 |
{n,m} | 重复n到m次 |
? | 重复1次或0次 |
+ | 重复1次或多次 |
* | 重复0次或多次 |
正则表达式的匹配特点:贪婪匹配
它会在允许的范围内取最长的结果
非贪婪模式/惰性匹配:在量词的后面加上?
.*?x 匹配任意非换行符字符任意长度 直到遇到x就停止
练习:
匹配整数:d+
匹配小数:d+.d+
匹配小数或整数:d+.d+|d+
d+(.d+)
匹配身份证号码:[1-9]d{16}[dX]|[1-9]d{14}
[1-9]d{14}(d{2}[dX])?
以上是关于pythonre字符串为特定字符和数字组成的主要内容,如果未能解决你的问题,请参考以下文章
将由单个数字和序列组成的字符串转换为允许对向量或数据帧进行子集化的格式