菜鸟教程 python 正则表达式,什么是python语言中的正则表达式

  菜鸟教程 python 正则表达式,什么是python语言中的正则表达式

  要成功匹配字符串,需要使用正则表达式模块、正则表达式匹配规则和要匹配的字符串。本文详细介绍了如何使用正则表达式实现字符匹配。有兴趣的可以看看。

  00-1010正则表达式中的特殊字符正则表达式的使用-1正则例-2正则例-3要成功匹配字符串,需要使用正则表达式模块、正则表达式匹配规则和要匹配的字符串。这三个条件中,模块和字符串都准备好了,只有匹配规则异常灵活。今天这一章就是要知道正则表达式中的特殊字符,通过这些字符我们可以匹配出我们想要的数据。

  

目录

  特殊字符描述\d匹配任何十进制数,与[0-9]一致\D匹配任何非数字\w匹配任何字母数字下划线和unicode字符集\W匹配非字母数字数据,下划线\s匹配任何空格字符,与[\n \t \r \v \f]相同\S匹配任何非空字符\A匹配。也称为通配符。

  

正则表达式中的特殊字符

  接下来,我们来看一个小案例,帮助我们理解如何使用这些特殊字符。

  进口re

  Test_data=我叫尼奥,今年30岁。#将字符串赋给变量test _ data。

  Result _ int=re.findall (\d ,test_data) #使用findall函数并传入 \d 的匹配规则来匹配test_data(仅限数字)

  Result _ space=re.findall (\ s ,test_data) #使用findall函数并传入匹配规则 \d 以匹配test_data(仅空格)

  Result _ str=re.findall (\ w ,test_data) #使用findall函数并传入匹配规则 \d 来匹配test_data(匹配字符串)

  result _ str _ start=re . find all( \ AMy ,test _ data) #匹配以My开头的字符串

  result _ str _ start _ null=re . find all( \ aMya ,test _ data) #匹配以Mya开头的字符串(没有mya,返回空列表)

  Result _ str _ end=re.findall (old。\ z ,test _ data) #匹配以old结尾的字符串.

  result _ str _ end _ null=re . find all( zold。\ z ,test _ data) #匹配以zold结尾的字符串。(zold不存在,返回空列表)

  Result _ all=re.findall( . ,test _ data) #匹配除\n以外的所有字符(包括空格)

  打印(result_int)

  打印(结果空间)

  Print(result_str)#从结果上看,\w比\d更高级,不仅匹配str,还匹配int(其实这里的int还是字符串)

  打印(结果_字符串_开始)

  打印(result_str_start_null)

  打印(结果字符串结束)

  打印(result_str_end_null)

  #执行结果如下

  # [3, 0]

  # [ , , , , , , ]

  # [M , y , N , a , M , e , I , s , N , e , o , I , M , 3 , 0 , y , e , a , r , s ,o , l ,

   d]

  # >>> [My]

  # >>> []

  # >>> [old.]

  # >>> []

  # >>> [M, y, , n, a, m, e, , i, s, , N, e, o, ,, , I, "", m, , 3, 0, , y, e, a, r, s, , o, l, d, .]

  

  

  

正则小案例 - 1

  1、定义一个函数,判断传入参数是否包含有数字。

  2、定义一个函数,判断传入参数是否含有数字,如果有则移除。

  

import re

  def have_number(data): # 定义一个判断是否存在数字的函数

   result = re.findall(\d, data) # 利用 re 模块的 findall 函数的 \d 规则判断传入的 data 是否存在数字

   print(result)

   for i in result: # 利用 for 循环 判断 result 的结果,如果存在返回 True ;反之返回 False

   return True

   return False

  def remove_number(data):

   result = re.findall(\D, data)

   print(result)

   return .join(result)

  if __name__ == __main__:

   test_data_1 = "My name is Neo, Im 30 years old."

   test_data_2 = "its a beautiful day to be with you"

   result = have_number(test_data_1)

   print(result)

   result = remove_number(test_data_1)

   print(result)

   result = re.findall(\W, test_data_2) # 匹配非字母数字的数据以及下划线

   print(result)

  

  运行结果如下图:

  

  

  

正则小案例 - 2

  1、定义一个 startwith 函数 判断传入数据是否是字符串的开头

  2、定义一个 endwith 函数 判断传入数据是否是字符串的结尾

  

import re

  def startswith(sub, data):

   _sub = \A{}.format(sub)

   result = re.findall(_sub, data)

   for i in result:

   return True

   return False

  def endswith(sub, data):

   _sub = {}\Z.format(sub)

   result = re.findall(_sub, data)

   if len(result) == 0:

   return False

   else:

   return True

  if __name__ == __main__:

   result = startswith(My, test_data_1)

   print(result)

   result = endswith(old., test_data_2)

   print(result)

  

  执行结果如下:

  

  

  

正则小案例 - 3

  1、python 内置函数 len() 是可以获取到字符串的长度的,但是当字符串中存在着空格符号的时候也会计算在长度内。

  2、利用正则的知识,定义一个计算字符串真实长度的函数

  

import re

  def real_len(data):

   result = re.findall(\S, data)

   return len(result)

  if __name__ == __main__:

   test_data_1 = "My name is Neo, Im 30 years old."

   test_data_2 = "its a beautiful day to be with you"

   print(len(test_data_2))

   result = real_len(test_data_2)

   print(result)

  

  运行结果如下:

  

  以上就是Python语法学习之正则表达式的使用详解的详细内容,更多关于Python正则表达式的资料请关注盛行IT软件开发工作室其它相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • python语言基本语句用法总结大全,python语言基本语句用法总结怎么写
  • python语言基本语句用法总结大全,python语言基本语句用法总结怎么写,python语言基本语句用法总结
  • python是一种什么类型的计算机语言,python语言是一种什么类型的编程语言
  • Python的保留字符,python语言中的保留字
  • python的指数e怎么表示,指数函数在python语言中怎么表示
  • python语言合法的变量命名,在python中变量的命名要注意哪些问题
  • python变量命名可以用中文吗,下面哪一个不是python语言合法的变量命名
  • Python分词库,用python语言中文分词第三方库jieba对文件data
  • python中复数类型的实部和虚部都是浮点数,python语言中,复数类型中实数部分和虚数部分
  • 用python语言判断一个数是否为素数,Python判断是不是素数
  • python语句变量命名规则,python语言命名变量规则
  • 简述python语言程序的特点,以下关于python语言技术特点
  • matlab中for循环的用法例子,python语言for循环语句
  • Python主网站,python语言的官方网站
  • 用python开发的软件有哪些,哪些工具可以使用python语言开发软件
  • 留言与评论(共有 条评论)
       
    验证码: