最近遇到个问题,想要用匹配多个字符串前缀,找了一圈,发现个好办法。

问题背景:

最近需要批量初始化表结构,要从MaxCompute上将所有项目下的所有表结构都拉下来,其中只需要将满足部分前缀的表,像ads,dwd,dws,cdm等,一开始是想到用startswith,但是查了下,只找到匹配单个前缀的,难道要写4遍?或者使用正则匹配了估计

解决方案

一开始以为startswith只可以匹配单个前缀

后来查了下,发现这个startswith,除了可以是str还可以是tuple

因为项目中有效的表名前缀有几个:ads,dwd,dws,cdm,还混杂着很多没用的临时表,需要做好剔除,所以元组足够我使用了# -*- coding: utf-8 -*-

"""

Created on Tue Apr 17 00:51:21 2018

@author: yuguiyang

"""

tables=['dwd_rack_machine','tmp_20180901','test_01','ads_demo']

pres=('ads','dwd','dws','cdm')

for t in tables:

if t.startswith(pres):

print(t)

当然,我们使用正则表达式也是可以的。import re

tables=['dwd_rack_machine','tmp_20180901','test_01','ads_demo']

for t in tables:

if re.match(r'(ads|dwd|dws|adm)',t):

print(t)

结果也是一样的,好了,我们就介绍到这里。

python共有前缀_Python 匹配多个字符前缀相关推荐

  1. python求近似值_python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配...

    已知一个元素,在一个list中找出相似的元素 使用场景: 已知一个其它来源的字符串, 它有可能是不完全与我数据库中相应的字符串匹配的,因此,我需要将其转为适合我数据库中的字符串 使用场景太绕了, 直接 ...

  2. python中文对齐_Python 终端下中文字符对齐处理和编码续

    本来是修改自己一个终端小程序的宽字符处理,然后就和编码纠结上了. 这两天花了不少时间继续研究了下这块,越研究越让人迷糊,还存在不少疑问.只能说在研究和总结这块时,我的内心是崩溃的--希望以后不再在这块 ...

  3. python编程计算器_Python编程之计算器/字符及界面

    界面方式: #coding=utf-8 #by : linhut from Tkinter import * #导入Tkinter所有组件 def clear(): display.set('') d ...

  4. python画龙猫_Python:制作动态字符图

    这次我们也拿小龙猫来做演示 ps:小龙猫:为什么老用我照片...作者:因为你可爱啊(.^▽^) 这里就不必多说了,也就导入几个用到的包 SOURCE_PATH:这个是GIF的路径OUTPUT_PATH ...

  5. python换行符占几个字符_python 字符前缀,运算符、换行符、数据类型和变量

    补充 *)/表示的除法即使是整数,结果也是浮点数 *)python表示的整数是没有大小限制的.而某些语言根据其储存长度是有大小限制的.例如Java对32位整数的范围限制在-2147483648-214 ...

  6. python正则匹配任意字符_Python 匹配任意字符(包括换行符)的正则表达式写法...

    Python 匹配任意字符(包括换行符)的正则表达式写法 想使用正则表达式来获取一段文本中的任意字符,写出如下匹配规则: (.*) 结果运行之后才发现,无法获得换行之后的文本.于是查了一下手册,才发现 ...

  7. python查找最长公共前缀_Python实现查找字符串数组最长公共前缀示例

    本文实例讲述了Python实现查找字符串数组最长公共前缀.分享给大家供大家参考,具体如下: 编写一个函数来查找字符串数组中的最长公共前缀. class Solution: def longestCom ...

  8. python查找公共前缀_Python实现查找字符串数组最长公共前缀示例

    本文实例讲述了Python实现查找字符串数组最长公共前缀.分享给大家供大家参考,具体如下: 编写一个函数来查找字符串数组中的最长公共前缀. class Solution: def longestCom ...

  9. Python基础教程:正则表达式-匹配多个字符

    匹配多个字符的相关格式 字符 功能 * 匹配前一个字符出现0次或者无限次,即可有可无 + 匹配前一个字符出现1次或者无限次,即至少有1次 ? 匹配前一个字符出现1次或者0次,即要么有1次,要么没有 { ...

  10. python正则表达式入门_python入门_常见正则表达式匹配

    made_in_miliLV的主页.png - 正则表达式:正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配.在开发的使用场景 - 例如:匹配url等等 本文中,对正则 ...

最新文章

  1. 这可能是史上功能最全的Java权限认证框架!
  2. 三维比例变换学习(WPF演示)
  3. espflashdownloadtool连接串口失败_关于串口下载问题和超时
  4. 机器学习:SVM的最朴素代码实现,第一个变量遍历样本获得,第二个变量随机选择
  5. C和C++之用extern “C“实现它们之间的互调
  6. JavaScript面试大全(二)
  7. DWF文件该如何打开查看呢?
  8. 旧手机改文件储存服务器,旧手机改云服务器
  9. 半导体设备英文缩写_涨知识!晶圆制造主要设备一览。
  10. fullpage.js版本3.0.9报错问题(licenseKey)
  11. 聚合搜索V3.0泛解析泛目录站群源码 MIP自动推送 SEO功能SEO源码
  12. wannier插值能带拟合4
  13. 小马智行与速腾聚创展开全面战略合作
  14. el-upload上传失败提示框重新上传直接弹出选择文件
  15. 无人驾驶工业车辆企业「未来机器人」完成数亿元融资
  16. 近百个Android优秀开源项目
  17. 决策树算法分析与应用
  18. 经典Android游戏推荐
  19. 少年头条对垒中年腾讯——解局两代互联网公司的商业之战
  20. c# html 附件上传,c#大文件分片上传demo

热门文章

  1. 一步一步理解欧拉公式
  2. SO – Shipping – Move Order Staus: BackOrder – 做搬运无法移仓
  3. edge使用html2协议,微软推出Microsoft Edge WebView2控件 帮助开发者更好的加载网页
  4. linux微信登陆失败,微信登陆失败原因与解决方法
  5. ubuntu显示时间不正确的问题解决
  6. PyS60开发环境搭建
  7. 中柏平板u盘启动_中柏A13笔记本如何进bios设置u盘启动
  8. iphone/ipad 连接smb服务器,备份照片
  9. Cesium开发环境搭建的几种方法总结
  10. n个人有c个魔法帽几天去掉所有的帽子