Python正则表达式初识(八)

继续分享Python正则表达式的基础知识,今天给大家分享的特殊字符是“\w”和“\W”,具体的教程如下。

1、“\w”代表的意思是该字符为任意字符,但是和特殊字符“.”的意思不同。“\w”代表的字符主要包括26个大写字母A到Z,即[A-Z]、26个小写字母a到z,即[a-z]、10个阿拉伯数字0到9,即[0-9]和下划线“_”。总结起来就是,“\w”代表的意思是[A-Za-z0-9_]中任意一个字符。“.” 代表的意思是任意字符,其范围比“\w”代表的意思要广。

下面是具体的代码演示,如下图所示:

可以看到此时用的是特殊字符中括号来代替特殊字符“\w”,匹配成功。

2、现在将[A-Za-z0-9_]改为\w,如下图所示。

可以看到仍然可以匹配成功。

3、将原始字符串改为“加A油”,如下图所示。

可以看到仍然可以匹配成功。

4、将原始字符串改为“加_油”,如下图所示。

可以看到仍然可以匹配成功。

5、当将原始字符串改为“加-油”,如下图所示。

可以看到此时就不可以匹配成功了,因为字符“-”并在包括在\w涵盖的范围之内。

6、“\W”代表的意思与“\w”刚刚相反,也就是匹配除了[A-Za-z0-9_]之外的其他字符。接上一步的例子,此时将“\w”改为“\W”,如下图所示。

可以看到此时就匹配成功了。

7、将原始字符串“加-油”改为“加 油”,中间有空格,其他保持不变,如下图所示。

很显然,使用“\w”肯定不能匹配成功,但使用“\W”便可以成功的进行匹配。

8、为了进一步加强对这两个符号的理解,将原始字符串中的中划线“-”改为下划线“_”,其他的保持不变,如下图所示。

此时可以看到匹配不成功,无任何输出。

小伙伴们,关于大“W”和小“w”的用法,你们get到了吗?

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Spark学习技巧

Java动态代理原理及解析

代理:设计模式 代理模式是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个真实对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及...

46650
来自专栏软件开发 -- 分享 互助 成长

C++ STL stack和queue

C++ STL中独立的序列式容器只有vector,list,deque三种,stack和queue其实就是使用容器适配器对deque进行了封装,使用了新接口。 ...

20490
来自专栏老九学堂

这是谁做的作业!C语言编码太不规范了...

1) 程序应采用缩进风格编写,每层缩进使用一个制表位(TAB),类定义、方法都应顶格书写;

17420
来自专栏一个爱吃西瓜的程序员

Python基础学习-类

① 面向对象编程是最有效的软件编写方法之一。 ② 编写类时,你定义一大类对象都有的通用行为。 ③ 基于类创建对象时,每个对象都自动具备这种通用行为。 ④ 根据类...

45570
来自专栏Python爬虫与数据挖掘

Python正则表达式初识(八)

继续分享Python正则表达式的基础知识,今天给大家分享的特殊字符是“\w”和“\W”,具体的教程如下。

10320
来自专栏我是攻城师

理解Java8的数据类型和运行时数据区域

Java虚拟机包含对对象的显式支持,对象要么是动态分配的类实例,要么是静态数组,对对象的引用我们可以叫做指针或者引用,一个对象可以有多个引用,对象总是通过引用的...

15930
来自专栏221-B

Python基础知识总结

首先,学一门语言都会问:点解要学这门语言? 而学Python的原因很简单,原因就是…..好鬼简单.(这句话不是我说的) 很喜欢Python极简的代码风格,以及众...

66920
来自专栏微信公众号:Java团长

Java动态代理原理及解析

代理模式是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个真实对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类...

10540
来自专栏Python小屋

微课系列(一):Python列表remove()方法工作原理

1)在列表非尾部增加或删除元素时,该位置后面元素会向后移动或向前移动,保证元素之间没有缝隙,这样的话,这些元素的索引会发生变化。

9940
来自专栏我是攻城师

在Scala里面如何使用元组

37440

扫码关注云+社区

领取腾讯云代金券