删除所有行中出现的相似字符
remove similar characters that appear in all rows
所以我有一个有两列"title"answers"url"的表。行如下:
Title url
Galago - Wikipedia http://en.wikipedia.org/wiki/Galago
Characteristics - Wikipedia http://en.wikipedia.org/wiki/Galago
Classification - Wikipedia http://en.wikipedia.org/wiki/Galago
Myst- Gamestop http://www.gamestop.com/ds/games/myst/69424
Plot- Gamestop http://www.gamestop.com/ds/games/myst/69424
我的问题是,我如何从某个url中删除所有行中出现的常见字符(从前三行中删除- Wikipedia,从其他两行中删除- Gamestop)。这只是一个小例子....我有许多具有相同模式的其他行(它们具有在来自某个url的所有行中重复出现的常见字符、单词)。我想补充的是,这些值是从javascript数组
如果标题列的所有字符串都是上面所示的格式,我认为最好的方法可能是在插入数据库表之前对标题应用正则表达式。这个正则表达式可以捕获"-"字符前面的所有数据,并丢弃"-"后面的"重复"数据。
关于PHP字符串正则表达式的信息可以在这里找到:http://php.net/manual/en/function.preg-match.php
我认为大多数自动化的解决方案会删除您想要保留的数据。出现在多行中的单词或短语不一定是多余的。我想到了一些可能的、但仍然不可靠的方法。只有当你在寻找整个单词时,这些方法才有效。
将所有标题读入数组,并将每个标题拆分为单词创建一个wordlist数组。然后,您可以确定每个单词的频率,并使用该信息从标题中删除不需要的单词。如果你有很多数据,这个方法可能会占用很多内存。
解析每个URL,提取主机名,使用句点(。)作为分隔符,然后从标题中搜索并删除这些字符串的出现。您可以选择创建要忽略的字符串白名单,如www、com、co、uk、net、org等。如果在域名中发现不需要的单词(如您的示例),此方法可能有效。
您可以将url信息规范化到另一个表中…取url列,让它url_id然后创建url表,提供url列和标题列。标题可以是Wikipedia或Gamestop等。然后在原始表中存储标题,仅包含标题,不包括url标题。
也许这不能很好地处理你正在尝试做的查询,但这样你就可以很容易地通过url, url标题,或标题或这些的任何组合进行搜索。
- 在JavaScript中输出转义字符
- 不同浏览器中的空白字符正则表达式行为
- Regex匹配除“”之外的所有字符;.js”;
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 使用RegExp查找url中的字符
- 如何为jQuery屏蔽输入插件创建一个允许字母数字、空格和重音字符的掩码
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 允许在文本框中使用某些字符
- 根据页面的位置突出显示文本中的字符
- 元素的内容必须由格式正确的字符数据或标记组成
- 如何将字符串拆分为字符,但在javascript中保留空格
- 我如何制作一个JS函数,它可以从相似的原始颜色双向更改为某个颜色
- 使用Google Maps API向标记添加多个字符
- 处理JSON字符串会导致JavaScript错误
- 单元格的工具提示或标题不显示超过2000个字符
- javascript替换换行符和特殊字符
- 如何找到编号.JavaScript 中两个字符串中的相似字符
- Jquery简化了与多个id相关的多个if语句,这些id具有相似的字符
- 如何比较字符相似但字符代码不同的字符串
- 删除所有行中出现的相似字符