所以我想编写一个与一个字符相匹配的正则表达式。例如:
wordList = ['inherit', 'inherent']
for word in wordList:
if re.match('^inhe....', word):
print(word)
理论上,它会打印继承和固有,但我只能打印它固有的。那么我怎样才能匹配一个字母短而不只是擦除其中一个点(。)
答案 0 :(得分:3)
(的被修改强>)
仅匹配固有,您可以使用.{4}
:
re.match('^inhe.{4}', word)
或....$
:
re.match('^inhe....$')
答案 1 :(得分:0)
正则表达式可能不是最好的工具,如果你只是想知道单词Y是否以单词X的前N-1个字母开头,请执行以下操作:
if Y.startswith( X[:-1] ):
# Do whatever you were trying to do.
X [: - 1]获取除X的最后一个字符之外的所有字符(如果X是空字符串,则为空字符串)。
如果Y以' blah'开头,Y.startswith(' blah')将返回true。