我需要找到一个已删除特殊字符的字符串。因此,我要做的是在句子中找到该字符串,并使用特殊字符返回该字符串。
例如:string = France09
Sentence : i leaved in France'09.
现在我做了re.search('France09',sentence)
,它将返回True
或False
。但我想将输出作为France'09
。
任何人都可以帮助我。
答案 0 :(得分:0)
在文档(https://docs.python.org/2/library/re.html#re.search)中,搜索不是 返回True
或False
:
扫描字符串以查找正则表达式模式产生匹配项的第一个位置,然后返回相应的MatchObject实例。如果字符串中没有位置与模式匹配,则返回None;否则,返回None。请注意,这不同于在字符串中的某个位置找到零长度匹配项。
答案 1 :(得分:0)
看看https://regex101.com/r/18NJ2E/1
TL; DR
import re
regex = r"(?P<relevant_info>France'09)"
test_str = "Sentence : i leaved in France'09."
matches = re.finditer(regex, test_str, re.MULTILINE)
for match in matches:
print(match.group('relevant_info'))
答案 2 :(得分:0)
尝试一下:
Input_str = "i leaved in France'09"
Word_list = Input_str.split(" ")
for val in Word_list:
if not val.isalnum():
print(val)
输出:
France'09
答案 3 :(得分:0)
您将需要创建一个与任意位置的特殊字符匹配的正则表达式:
import re
Sentence = "i leaved in France'09"
Match = 'France09'
Match2 = "[']*".join(Match)
m = re.search(Match2, Sentence)
print(m.group(0))
Match2获得值"F[']*r[']*a[']*n[']*c[']*e[']*0[']*9"
。您可以在[']
部分中添加其他特殊字符。