首页 > 其他分享 >如何在pandas.series.str.contains中匹配以".xls"开头的行

如何在pandas.series.str.contains中匹配以".xls"开头的行

时间:2023-11-27 13:31:28浏览次数:27  
标签:匹配 series contains str 字符串 xls pandas

是的,.在正则表达式中是一个特殊字符,它匹配除了换行符以外的任何字符。如果你想要匹配一个实际的.字符,你需要在它前面加上一个反斜杠\来进行转义。因此,'\.'在正则表达式中表示一个.字符。

例如,如果你想要匹配字符串".xls",你需要使用正则表达式'\.xls'。这个正则表达式匹配以.字符开始,后面跟着"xls"的字符串。

在Pandas中,你可以使用`pandas.Series.str.contains`方法来匹配以特定字符串开头的行¹²³⁴⁵。如果你想要匹配以".xls"开头的行,你可以使用正则表达式`'^\.xls'`¹²³⁴⁵。以下是一个示例¹²³⁴⁵:


```python

import pandas as pd


# 创建一个数据系列

s = pd.Series(['.xlsFile1', 'File2.xls', '.xlsFile3', 'File4'])


# 使用str.contains匹配以".xls"开头的行

mask = s.str.contains('^\.xls')


# 打印匹配的行

print(s[mask])

```


在这个代码中,`'^\.xls'`是一个正则表达式¹²³⁴⁵,`^`表示字符串的开始,`\.`表示一个点,`xls`表示字符串"xls"¹²³⁴⁵。因此,`'^\.xls'`匹配以".xls"开头的字符串¹²³⁴⁵。运行这段代码后,它会打印出以".xls"开头的行¹²³⁴⁵。


希望这个解释对你有所帮助!

在Python中,字符串前面的r表示原始字符串。在原始字符串中,所有的字符都是直接按照字面的意思来使用,没有转义字符这一说。这对于正则表达式和Windows文件路径等来说非常有用。

例如,如果你有一个字符串'\n',Python会将其视为一个换行符。但是,如果你在字符串前面加上r,如r'\n',Python会将其视为包含两个字符的字符串:一个反斜杠和一个n

因此,"^\.xls"r"^\.xls"在功能上是相同的,都可以匹配以".xls"开头的字符串。但是,使用r"^\.xls"可以确保字符串中的所有字符都按照字面的意思来解释,而不是作为转义字符。

希望这个解释对你有所帮助!

源: 与必应的对话, 2023/11/27

(1) pandas.Series.str.contains — pandas 2.1.3 documentation. https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.str.contains.html.

(2) 08_Pandas提取含有指定字符串的行(完全匹配,部分匹配)_pandas筛选包含特定字符的行-CSDN博客. https://blog.csdn.net/qq_18351157/article/details/105362159.

(3) pandas.Series.str.contains详解-CSDN博客. https://blog.csdn.net/weixin_43484764/article/details/89847241.

(4) pandas.Series.str.contains - 如何检查 panda.series 是否包含字符串?. https://runebook.dev/zh/docs/pandas/reference/api/pandas.series.str.contains.

(5) pandas.Series.str.contains查询每行是否包含指定的字符串_判断series是否存在指定字符串-CSDN博客. https://blog.csdn.net/qq_27361945/article/details/84613375.

标签:匹配,series,contains,str,字符串,xls,pandas
From: https://blog.51cto.com/u_16055028/8584183

相关文章

  • 为什么 IDEA 建议去掉 StringBuilder,而要使用 “+” 拼接字符串?
    作者:京东零售姜波来源:京东云开发者社区各位小伙伴在字符串拼接时应该都见过下面这种提示:内容翻译:报告StringBuffer、StringBuilder或StringJoiner的任何用法,这些用法可以用单个java.lang.String串联来替换。使用字符串串联可以使代码更短、更简单。只有当得到的串联至少与原......
  • 包装类和tostring
    基本数据类型:boolean,byte,short,int,long,char,float,double包装类:Boolean,Byth,Short,Integrt,Long,Character,Float,Double基本数据类型包装成包装类的实例--装箱获得包装类对象中包装的基本类型变量--拆箱jdk1.5后支持自动装箱自动拆箱,但类型必须匹配packageJavaSE.包装类;......
  • 透析Java本质的36个话题03String类
    1.来龙去脉-“+”是怎么连接字符串的?“+”号对String对象的连接OracleJDK1.7的实现: 当使用+字符串拼接,会创建一个临时的StringBuilder对象,该对象调用append连接操作。 类似于StringBuilder.append(s1).append(s2).toString;"+"的性能如果是在循环中对String对象进......
  • Reference and inspiration from China's strategy for addressing water pollution i
     AccordingtoChina'sthreelineonepermitmeasures,webelievethatthishasacertainreferencevalueforwaterpollutionissuesinAfrica.The"threelines"referstotheecologicalprotectionredline,theenvironmentalqualitybottom......
  • apache的字符串工具类StringUtils
    org.apache.commons.lang3.StringUtils。<!--StringUtils、NumberUtils等工具类--><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.10</version></d......
  • python 读取 str存储的byte
    Python读取str存储的byte介绍在Python中,我们可以使用字符串(str)来存储二进制数据(byte)。但是,当我们需要读取这些存储在字符串中的字节时,我们需要进行一些特定的操作。本文将向你展示如何使用Python读取str存储的byte,并提供详细的步骤和示例代码。流程在开始具体的实现过程之前,我......
  • String.format()方法占位符
    格式化字符串由4部分组成,特殊的格式常以%index$开头,index从1开始取值,表示将第index个参数拿进来进行格式化,[最小宽度]的含义也很好理解,就是最终该整数转化的字符串最少包含多少位数字。剩下2个部分的含义:标识如下:-在最小宽度内左对齐,不可以与"用0填充"同时使用#只适用于8进制和16进......
  • 什么是 Public NPM Registry
    PublicNPMRegistry是一个巨大的代码库,它是Node.js开发者们的重要资源。在这个库中,开发者们可以分享、发现、下载和使用数以万计的开发项目所需的代码包。这些代码包被称为"packages",每一个package都是一个完整的、可以独立运行的代码模块,它包含了所有必要的元数据信息,如其......
  • Probabilistic principal component analysis-based anomaly detection for structure
    SHMcanprovidealargeamountofdatathatcanrevealthevariationinthestructurecondition什么是压缩传感,数据重构,研究背景与意义,怎么用基于模型的方法不可避免的缺点是模型的不确定性,因为很难创建能够模拟真实物理情况的可靠的结构模型。为了克服基于模型的方法的缺......
  • 【Lustre相关】应用部署-01-源码编译IB驱动及lustre软件包
    一、编译安装系统版本:CentOSLinuxrelease7.9.2009(Core)内核版本:3.10.0-1160.el7.x86_64网卡型号:MellanoxTechnologiesMT2892Family[ConnectX-6Dx]软件版本:lfs2.12.9ib注:使用CentOS-7-x86_64-Everything-2009ISO,选择Minimalinstall安装,勾选Debugging......