2017-08-03 135 views
0

我用推特和文本处理工作后循环,代码返回类似:查找字符串类似的话在与蟒蛇

  • Lorem存有悲坐amaet六
  • Lorem存有悲坐amaet
  • Lorem存有悲通过

所以SQLite数据库amaet坐在识别这些记录是唯一的。 我的问题是如何找到如果两个字符串包含5个相似的单词,然后跳过它?我应该更改我的正则表达式代码还是添加if statement

我的代码:

 clean1 = re.sub(r"(?:@\S*|#\S*|http(?=.*://)\S*)", "", tweet.text) 
     clean2 = re.sub("(@[A-Za-z0-9]+)|([^0-9A-Za-z \t:])|(\w+:\/\/\S+)", " ", clean1) 
     final = re.sub(r'^RT[\s]+', '', clean2) 

谢谢!

+0

我的答案能解决您的问题吗? – armnotstrong

回答

2

我不认为正则表达式将有助于在这种情况下

你可以做到这一点说,如果两行有5个相同的话

str1 = "Lorem ipsum dolor sit amaet vi" 
str2 = "Lorem ipsum dolor sit amaet" 

count = 0 
str1_split = str1.split(" ") 
for word in str2.split(" "): 
    if word in str1_split: 
     count += 1 

print count 
0

这里有两个字符串来算的话一样的方法:

a="Lorem ipsum dolor sit amaet vi" 
b="Lorem ipsum dolor sit amaet" 
count=0 
for i,j in zip(a.split(),b.split()): 
    if i==j: 
     count+=1 
print count 

输出:

5