轻松python文本专题-字符串开头或者结尾匹配

场景:

字符串开头或者结尾匹配,一般是使用在匹配文件类型或者url

一般使用startwith或者endwith

>>> a='http://blog.csdn.net/raylee2007'
>>> a.startswith ('http')
True

注意:这两个方法里面的参数可以是str,也可以是元组,但是不可以是列表和字典

>>> a='http://blog.csdn.net/raylee2007'
>>> a.startswith (('http','ftp'))
True

如果是列表或者字典,则报错

>>> a='http://blog.csdn.net/raylee2007'
>>> a.startswith (['http','ftp'])
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    a.startswith (['http','ftp'])
TypeError: startswith first arg must be str or a tuple of str, not list
>>> 

其实,除了上面的方法, 也可以使用切片来实现,只不过代码看上去没那么好看而已

>>> a='http://blog.csdn.net/raylee2007'
>>> a[0:4]=='http'
True
>>> 

当然,我们也可以用正则表达式来做,但是理解上面就稍微难度有点。

>>> import re
>>> url = 'http://www.python.org'
>>> re.match('http:|https:|ftp:', url)
<_sre.SRE_Match object; span=(0, 5), match='http:'>
>>> help(re.match )
Help on function match in module re:

match(pattern, string, flags=0)
    Try to apply the pattern at the start of the string, returning
    a match object, or None if no match was found.

>>> 

就说到这里,谢谢大家

------------------------------------------------------------------

点击跳转零基础学python-目录

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-07 03:34:21

轻松python文本专题-字符串开头或者结尾匹配的相关文章

轻松python文本专题-字符串对齐

场景: 字符串对齐 python提供非常容易的方法,使得字符串对齐 >>> print("abc".center (30,'-')) -------------abc-------------- >>> print("abc".ljust (30)+'|') abc | >>> print("abc".rjust (30)) abc >>> 分别是center,ljust,r

Python: 字符串开头或结尾匹配str.startswith(),str.endswith()

问题 需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URLScheme 等等. 解决方案 1.检查字符串开头或结尾的一个简单方法是使用str.startswith() 或者是str.endswith() 方法.比如: eg1:>>> filename = 'spam.txt'>>> filename.endswith('.txt')True>>> filename.startswith('file:')False>>&g

轻松python文本专题-判断对象里面是否是类字符串(推荐使用isinstance(obj,str))

场景: 判断对象里面是否是类字符串 一般立刻会想到使用type()来实现 >>> def isExactlyAString(obj): return type(obj) is type('') >>> isExactlyAString(1) False >>> isExactlyAString('1') True >>> 还有 >>> def isAString(obj): try :obj+'' except:re

轻松python文本专题-去掉字符串前后空格

场景: 去掉字符串前后空格 可以使用strip,lstrip,rstrip方法 >>> a="abc".center (30) >>> a ' abc ' >>> b=a.lstrip () >>> b 'abc ' >>> c=a.rstrip () >>> c ' abc' >>> d=a.strip () >>> d 'abc' >

轻松python文本专题-maketrans和translate

场景: 过滤字符串的某些字符,我们从例子出发 >>> tb=str.maketrans ('abc','123') >>> 'abcd'.translate (tb) '123d' >>> 'abcd+++a+b+cd'.translate (tb) '123d+++1+2+3d' >>> 1.建立字符映射表,也就是maketrans方法所做的事情,它返回一个字符串的映射表,意思是:如果字符串里面出现a,那么它就会变成对应的1,如此类

原生jS之-去掉字符串开头和结尾的空字符

怎么解决这个问题?? 思路就是我们利用正则匹配到所谓的空格,然后替换为空字符,我们要用到的是str的replace API 代码如下: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 &

【trim()】去掉字符串开头和结尾的空格,防止不必要的空格导致的错误。

去掉字符串开头和结尾的空格,防止不必要的空格导致的错误. public static void main(String arg[]){ String a=" abc"; String b="abc"; System.out.println(b.equals(a)); a=a.trim();//去掉字符串中的空格 System.out.println(a.equals(b)); }

Python-字符串开头或结尾匹配

startswith() 和 endswith() 方法提供了一个非常方便的方式去做字符串开头和结尾的检查. 1.查看指定目录下的所有文件名 >>> import os >>> filenames = os.listdir('I:\PythonTest') >>> filenames ['111.csv', '111.xlsx', '111.xml', '123.txt', '123.xlsx', '123123.xml', '123123.xml.b

python_如何判断字符串a以某个字符串开头或结尾?

案例: 某文件系统目录下有一系列文件: 1.c 2.py 3.java 4.sh 5.cpp ...... 编写一个程序,给其中所有的.sh文件和.py文件加上可执行权限 如何解决这个问题? 先获取目录下文件 通过startswith() 和endswith()方法判断是否以某个字符结尾,列表解析留下满足条件的文件名 迭代列表,给对应的文件赋予权限 # !/usr/bin/python3 import os import stat # 获得当前文件下目录 file_l = os.linesdir