小编suz*_*zee的帖子

使用字典修复单词在python中查找?

我从文档中提取了句子列表.我正在预处理这个句子列表,使其更加明智.我遇到了以下问题

我有句话如 "more recen t ly the develop ment, wh ich is a po ten t "

我想用查找词典来纠正这些句子?删除不需要的空格.

最终的输出应该是 "more recently the development, which is a potent "

我认为这是预处理文本的直接任务?我需要一些帮助来寻找这些方法.谢谢.

python dictionary nltk python-2.7 text-segmentation

14
推荐指数
1
解决办法
3303
查看次数

字符的序列预测?

我是机器学习的新手,所以如果问题很简单,请放心.

我得到了一系列观察到的人物说,ABABBABBB .....(n个字符).我的目标是通过一些"学习"机制预测下一个角色.我的约束是观察到的字符(训练数据?)不是太多,即我说一个长度为6000的序列来学习基础模式

我很担心解决这个问题需要采取什么策略,我最初的赌注是:1)某种ngram模型?2)神经网络(LSTM等)?3)HMM

你能否指出解决这个问题的正确方法?

text machine-learning n-gram neural-network lstm

8
推荐指数
1
解决办法
280
查看次数

javascript regexp用于带有括号的单词边界检测

我有一个字符串"我是一个机器人,我被命名为456/m(4).忘了名字(它没有任何意义)"

现在我想从这个字符串中提取所有单词,我使用正则表达式:

/\b[\w\S]+\b/g
Run Code Online (Sandbox Code Playgroud)

它返回字符串中的所有单词,除了有一个单词"456 /(4"而不是"456 /(4)".我明白这是因为它是一个单词边界,但是在那里我可以说它不是一个合法的单词边界,因为没有"合法的"起始括号?

javascript regex

5
推荐指数
1
解决办法
100
查看次数

当关键词是多词时,有效地搜索关键词

我需要使用python有效地匹配一个非常大的关键字列表(> 1000000).我发现一些非常好的库试图快速完成这个:

1)FlashText(https://github.com/vi3k6i5/flashtext)

2)Aho-Corasick算法等

但是我有一个特殊的要求:在我的上下文中,如果我的字符串是'XXXX是YYYY的非常好的指示',则关键字'XXXX YYYY'应该返回匹配.请注意,'XXXX YYYY'不是作为子字符串出现的,但字符串中存在XXXX和YYYY,这对我来说足够好了.

我知道如何天真地做到这一点.我正在寻找的是效率,为此更好的图书馆?

python string pattern-matching string-matching keyword-search

5
推荐指数
1
解决办法
416
查看次数

如何比较python中的反斜杠

我有一组从文件中读取的字符串 say ['\x1\p1', '\x2\p2', '\x3\p3', ... etc.]

当我将它们读入变量并打印它们时,字符串显示为 ['\\x1\\p1', '\\x2\\p2', '\\x3\\p3', ... etc.]. 我知道该变量在'\x1\p1', ... etc.内部表示,但是当它显示时它用双斜线显示。

但现在我想在句子中搜索和替换这个列表的元素,即说如果\x1\p1在句子中"How are you doing \x1\p1"然后'\x1\p1'用'Y'替换。但是在这种情况下替换方法不起作用!想知道为什么?

让我进一步解释一下:我的文本文件 ( codes.txt) 有条目\xs1\x32\xs2\x54以新行分隔。所以当我使用它阅读它时

with open('codes') as codes:
    code_list = codes.readlines()
Run Code Online (Sandbox Code Playgroud)

接下来,我确实可以说 code_list_element_1 = code_list[1].rstrip()

当我打印时code_list_element_1,它显示为'\\xs1\\x32'

接下来,让我的目标字符串是 target_string = 'Hi! my name is \xs1\x32'

现在我想用 say替换code_list_element_1应该\xs1\x32在 target_string 中的那个'Y'

所以,我试过了code_list_element_1 in target_string。我得到False

接下来,我没有从文本文件中读取代码,而是初始化了一个变量 find_me …

python python-2.7

4
推荐指数
1
解决办法
1580
查看次数

检查字符串列表中的所有元素是否都在字符串中的最快方法

我有一个字符串

"我的名字是安德鲁,我非常棒".

让我们说我有一个列表,如

[['andrew','name','awesome'],['andrew','names','awesome']]

我需要我的解决方案才能回归

['andrew','name','awesome']

天真的解决方案是:

myString='My name is Andrew, I am pretty awesome'
keywords = [['andrew', 'name', 'awesome'], ['andrew', 'designation', 'awesome']]
results=[]
for i in keywords:
 if all(substring in myString.lower() for substring in i):
    results.append(i)
print results
Run Code Online (Sandbox Code Playgroud)

我的问题是,当列表关键字非常大(比如100000)时,存在性能瓶颈.我需要知道最有效的方法.

python string search string-matching

4
推荐指数
1
解决办法
96
查看次数

使用正则表达式在句子中查找单词

所以,我试图在一个句子中找到一个单词(一个完整的单词).让我们说这句话是

Str1 = "1. how are you doing"
Run Code Online (Sandbox Code Playgroud)

并且我有兴趣发现是否

Str2 = "1."
Run Code Online (Sandbox Code Playgroud)

在里面.如果我做,

re.search(r"%s\b" % Str2, Str1, re.IGNORECASE)
Run Code Online (Sandbox Code Playgroud)

应该说发现了一场比赛,不是吗?但是re.search这个查询失败了.为什么?

python regex python-2.7

2
推荐指数
1
解决办法
301
查看次数

python re sub 与 findall

我的代码:

import urllib
import re
xml = urllib.urlopen('url').read()
Run Code Online (Sandbox Code Playgroud)

我有兴趣从 xml 文件中删除某些标签及其内容,因此,我尝试使用正则表达式。

例如:

re.findall(r'<fig(.*?)</fig>', xml, re.DOTALL)
Run Code Online (Sandbox Code Playgroud)

返回匹配项且非空。

然而,

re.sub(r'<fig(.*?)</fig>', ' ', xml, re.DOTALL)
Run Code Online (Sandbox Code Playgroud)

不执行任何操作,xml 字符串未更改。我很困惑为什么,请帮忙。

python regex

2
推荐指数
1
解决办法
2587
查看次数

检查 JavaScript 中的 Promise 是否完成?

我正在使用 PDF.js 从 PDF 中提取文本内容,接下来我将使用它进行更多处理,为此,

var complete=0;
var full_text="";
var PDF_render = PDFJS.getDocument("x.pdf").then(function(pdf) {
    var page_text = {};
    for (i = 1; i <= pdf.numPages; i++){
        pdf.getPage(i).then( function(page){
           var n = page.pageNumber;
            page.getTextContent().then( function(textContent){
                var page_text_part = "";
                textContent.items.forEach(function (textItem){
                    page_text_part += textItem.str;
                    page_text_part += " ";
                    });
                page_text[n] =  page_text_part + "\n\n";
                ++complete;
                if (complete == pdf.numPages){
                 for( var j = 1; j <= pdf.numPages; j++)
                    full_text += page_text[j];
                }
              });
            });
        }
    });
Run Code Online (Sandbox Code Playgroud)

问题是 PDF.js 返回 Promise 并且它们是异步执行的,但是我需要对返回的文本执行一些后处理。为此,我需要等待承诺完全执行,然后才能继续。如何实现这一目标?请帮忙。

javascript promise pdf.js

0
推荐指数
1
解决办法
5388
查看次数