首先,在详细说明我正在处理的问题之前,让我告诉您,我目前是一个SQL新手,因此,只要有可能,我都会欣赏到简单的解释和简单的解决方案。我现在拥有的是:
考虑到这个查询:
SELECT
table1.id as id,
table1.tag1 as tag1,
table2.tag2 as tag2,
table2.tag2 like '%'+table1.tag1'%' as match
FROM table1
INNER JOIN table
使用senate.gov网站的游说披露法案(LDA) API,我能够创建一个数据库,其中包括游说国会办公室特定候选人的游说者或组织提供的每一个个人捐款。
然而,政府的LDA数据是相当没有条理的,因为填写表格的游说者通常会错误地拼写政客的名字或使用交替拼写。
例:说客可以给同一个候选人捐款,但可以写信给收款人,如约翰·史密斯、乔纳森·史密斯、乔恩·史密斯等。
因此,我试图使用正则表达式来确保我的Python程序不会遗漏任何排印或替换拼写.
这是我以前做过的,但是没有考虑到交替拼写(我不想每次都手动输入约翰·史密斯、乔纳森·史密斯、乔恩·史密斯,我宁愿用regex来做:J*n Smith )
im
我对python很陌生,我正在运行一个fuzzywuzzy字符串,该字符串与列表中的逻辑匹配,其中包含200万条记录。代码正在运行,它也提供输出。问题是它是极其慢的。在3小时内,它只处理80行。我希望通过使其同时处理多行来加快速度。
如果它有帮助的话--我正在用16 it内存和1.9 GHz双核CPU在我的机器上运行它。
下面是我正在运行的代码。
d = []
n = len(Africa_Company) #original list with 2m string records
for i in range(1,n):
choices = Africa_Company[i+1:n]
我有一个界面,用户将输入公司的名称。然后,它将他们输入的内容与数据库中的当前条目进行比较,如果发现类似的条目,它会向他们提供选项(以防他们拼写错误),或者他们可以单击一个按钮,以确认他们输入的内容肯定是新的和独特的。
我遇到的问题是,它不是很准确,经常会出现几十个“相似”的匹配,而这些匹配根本不是那么相似!
这是我现在拥有的,第一个大函数,我没有做,我不清楚它到底是做什么的。有没有更简单的方法来获得我想要的东西?
// Compares strings and determines how similar they are based on a nth letter split com
我有函数比较用户输入与xml文件中的字符串,但如果有空格或拼写错误,它返回false,我希望它返回true,如果差异是一个字符
//xml file like this
<xmlString>HELLO</xmlString>
<result>somthing</result>
和像这样的脚本文件
var userInput="Jello";
if (userInput.toUpperCase().indexOf(xmlString) >= 0){ //this should return true and execu
我有一张清单,上面有这样的实体:
["Bluechoice HMO/POS", "Pathway X HMO/PPO", "HMO", "Indemnity/Traditional Health Plan/Standard"]
这不是详尽无遗的列表,还有其他类似的条目。
如果存在,我希望从文本文件(包含30页以上的信息)中提取这些实体。这里的关键是这个文本文件是使用OCR生成的,因此可能不包含确切的条目。例如,它可能有:
"Out of all the entries the user made, BIueChoise H
好的,我看到了很多关于模糊字符串匹配,Levenstein距离,最长的公共子字符串的帖子,等等。他们似乎都不适合我想做的事。我正在从各种web服务中提取产品结果,从这些服务中我可以为该产品建立一个大的名称列表。这些名称可能包括一堆可变的垃圾。下面是一些来自SearchUPC的例子:
Apple 60W magsafe adapter L-shape with extension cord
Original Apple 60W Power Adapter (L-shaped Connector) for MacBook MC461LL/A with AC Extension Wall Cord
假设我有一本字典:
{apple:large apple, apple:red apple, apple:aple, orange:mandarin, orange:orang, orange:blood orange}
等等..。
然后我想用键替换一个大的条目文档。然而,偶尔会出现一个新的值,即{apple:green apple}
是否有一种方法,可以用相应的键替换所有值,但也可以替换“关闭”值,比如如果它们出现时给定的值?
示例文档:
var1
_____
aple
apple
orange
Apple
Red apple
gren Apple
blood Orange
orang
v
我在SQL server中的表中有一些条目,如下所示。
2934046 Kellogg’s Share Your Breakfast 74672 2407522 Kellogg?s Share Your Breakfast ACTIVE 2015-09-01 9999-12-31
2934046 Kellogg?s Share Your Breakfast 74672 2407522 Kellogg?s Share Your Breakfast ACTIVE 2015-09-01 9999-12-31
另一个例子可能是
2939508 UOL Ação Social
我想知道是否有一种方法可以在javascript中使用regex匹配单词,但它可以接受一个拼写错误(一个字母更改,一个丢失的字母,或者多一个字母)。
示例。这里我有一个精确的匹配:
function isWordInSentence(s, w) {
s = s.toLowerCase();
w = w.toLowerCase();
return new RegExp('\\b'+w+'\\b').test(s);
}
var word = 'bird';
console.log(isWordInSentence(
我想知道是否有人知道一个好的算法来匹配2个字符串,接受细微的差异,例如:
第一个单词是要与第二个字符串进行比较的第一个字符串。
EX1: hellos - hello
EX2: Hello - hello
EX3: Helo - hello
EX4: ello - hello
EX5: I own iphone - i own a iphone
EX6: I beleive in god - i believe in god
目前,我在我的FULLTEXT数据库上使用MySQL索引,并使用简单的查询
MATCH (movie) AGAINST("City of Gold")
这是目前的工作,它正在从数据库中选择正确的行。
但是现在,我遇到了一些问题,比如Cidade de Deus Of of ,这是一个非常接近的变体,例如,City of Gold DVDDrip
我的问题是,匹配正确行的最佳搜索算法是基于数据库中最接近的最大匹配。
我的想法:
我天真的想法是,是否有任何内置的函数或算法来匹配与数据库匹配并返回结果的最大字数。
我遇到过狮身人面像,但我不确定它是否解决了上述问题,还是对它来说也