[英]Python string regular expression
我需要进行字符串比较以查看2个字符串是否相等,例如:
>>> x = 'a1h3c'
>>> x == 'a__c'
>>> True
与字符串中间的3个字符无关。
您需要使用锚点。
>>> import re
>>> x = 'a1h3c'
>>> pattern = re.compile(r'^a.*c$')
>>> pattern.match(x) != None
True
这将检查第一个和最后一个字符为a
和c
。 而且它也不在乎中间的字符。
如果您想检查中间是否存在三个字符,可以使用它,
>>> pattern = re.compile(r'^a...c$')
>>> pattern.match(x) != None
True
请注意,行锚$
结尾很重要,如果没有$
,则a...c
将匹配afoocbarbuz
。
if str1[0] == str2[0]:
# do something.
您可以根据需要多次重复此语句。
这是切片。 我们正在获得第一价值。 要获取最后一个值,请使用[-1]
。
我还要提到的是,通过切片,只要您知道字符串开头或结尾的相对位置,字符串就可以是任何大小。
您的问题可以通过字符串索引解决,但是如果您想介绍正则表达式,请继续。
import re
your_match_object = re.match(pattern,string)
在你的情况下的模式将是
pattern = re.compile("a...c") # the dot denotes any char but a newline
从这里,您可以看到您的字符串是否适合
print pattern.match("a1h3c") != None
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.