Python位运算符&正则表达式

位运算符

1.按位取反运算符 ~

  • 功能:对整数的每个二进制位取反(0 变 1,1 变 0)。
  • 结果遵循补码规则(~x = -x - 1)。例如 ~5 = -6。

2. 按位运算符 |

  • 功能:对两个整数的二进制位逐位进行 或运算(有 1 则 1)。

3. 按位运算符 &

  • 功能:对两个整数的二进制位逐位进行 与运算(全 1 则 1)。

4.按位异或^

  • 相同为 0,不同为 1。

5. 集合操作(仅 | 和 &)

  • 当操作数是集合(set)时,| 和 & 表示集合运算:
  • | → 并集:合并两个集合的所有唯一元素。
  • & → 交集:返回两个集合共有的元素。

正则表达式

  1. 正则表达式≈通配符*的增强版
  2. 功能:匹配指定规则的字符串
  3. 在线测试工具:http://regex101.com

任意符(.*)(不包含换行符)

限定符(对象是一个字符)

  1. ? :(限定符?前面的字符需要出现0次或者1次)
    • 例如:used?;表示限定符?前面的字符d需要出现0次或者1次
  2. * :(匹配出现0个或者多个字符)
    • 例如:ab*c;表示字符b可以没有也可以出现多次
  3. + :(匹配出现1次及1次以上的字符)
    • 例如:ab+c;表示匹配字符b出现1次或1次以上的对象
  4. {n} :(匹配出现n次的字符)
    • 例如:ab{6}c;表示匹配字符b出现6次的字符
    • 例如:ab{2,6}c;表示匹配字符b出现2~6次的字符
    • 例如:ab{2,}c;表示匹配字符b出现2次以上的字符
  5. ()限定符 :(按照限定符法则进行匹配()内的字符;该方法可用于匹配多个字符的重复)

运算符

  1. | :(或)
    • 例如:a (cat|dog);优先匹配a开头的字符,然后匹配要么是cat,要么是dog的字符
  2. []+ :(字符类;匹配由[]里的字符所构成的单词)
    • 例如:[abc]+: 匹配由abc这几个字母构成的字符
    • 例如:[a-z]+: 匹配由所有的小写英文字符所构成的字符
    • 例如:[A-Z]+: 匹配由所有的大写英文字符所构成的字符
    • 例如:[a-zA-Z]+: 匹配由所有的英文字符所构成的字符
    • 例如:[a-zA-Z0-9]+: 匹配由所有的英文字符和数字所构成的字符
    • 例如:[^ ]+: 匹配[^ ]里的字符构成的字符

元字符

  1. \d+ :(数字字符) ≈ [0~9]+
  2. \D+ 😦数字字符) ≈ ^[0~9]+
  3. \w+ :(单词字符;包含(英文、数学及上下划线))
  4. \W+ 😦单词字符;包含(英文、数学及上下划线))
  5. \s+ :(空白符;包含(Tab字符和换行符))
  6. \S+ 😦空白符;包含(Tab字符和换行符))

特殊字符(灵活运用)

  1. ^匹配行首
  2. $匹配行尾

贪婪与懒惰匹配

  1. 例如:<.+>:(整个字符串作为单个匹配)
    返回:
    <span><b>This is a sample text</b></span>
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值