标签: tokenize

从ElasticSearch文档中检索分析的标记

尝试访问我的ElasticSearch文档中的分析/标记化文本.

我知道您可以使用Analyze API根据分析模块分析任意文本.因此,我可以将文档中的数据复制并粘贴到Analyze API中,以查看它是如何标记化的.

但这似乎不必要地耗费时间.有没有办法指示ElasticSearch在搜索结果中返回标记化文本?我查看了文档但没有找到任何内容.

text tokenize elasticsearch

34
推荐指数
3
解决办法
2万
查看次数

PHP名称空间删除/映射和重写标识符

我正在尝试自动从PHP类集合中删除命名空间,以使它们与PHP 5.2兼容.(共享主机提供商并不喜欢流氓PHP 5.3安装.不知道为什么.此外,有问题的代码不使用任何5.3功能添加,只是语法.自动转换似乎比手动或重新实现代码库更容易.)

为了重写*.php脚本,我基本上是在一个tokenizer列表上运行.标识符搜索+合并已经完成.但是我现在有点困惑如何完成实际的重写.

function rewrite($name, $namespace, $use) {

    global $identifiers2;            // list of known/existing classes

    /*
        bounty on missing code here
    */

    return strtr($name, "\\", "_");  // goal: backslash to underscore
}
Run Code Online (Sandbox Code Playgroud)

将在每个找到的标识符(无论是类,函数还是常量)上调用该函数.它将接收一些上下文信息,以将本地标识符转换为绝对/全局$ name:

$name =
    rewrite(
        "classfuncconst",      # <-- foreach ($names as $name)
        "current\name\space",
        array(
           'namespc' => 'use\this\namespc',
           'alias' => 'from\name\too',
           ...
        )
    );
Run Code Online (Sandbox Code Playgroud)

在这个阶段,我已经准备了$identifiers2一份清单.它包含所有已知类,函数和常量名称的列表(为简单起见,此处合并).

$identifiers2 = array(             // Alternative suggestions welcome.
   "name\space\Class" => "Class",  // - list structure usable for task?
   "other\ns\func1" => …
Run Code Online (Sandbox Code Playgroud)

php namespaces tokenize

31
推荐指数
1
解决办法
3609
查看次数

解析数字和字符串是Lexer的工作吗?

解析数字和字符串是词法分析员的工作吗?

鉴于我正在询问词法分析器是否应该解析输入,这可能听起来也可能听起来不笨.但是,我不确定这实际上是lexer的工作还是解析器的工作,因为为了lex正确,lexer需要首先解析字符串/数字,所以看起来代码会重复,如果解析器执行此操作.

它确实是词法分析员的工作吗?还是应该词法分析器只是分手像串123.456入串123,.,456并让解析器弄清楚的休息吗?使用字符串这样做不会那么简单......

parsing tokenize lexer

31
推荐指数
1
解决办法
3035
查看次数

切换案例或std :: map的效率更高

我在这里考虑令牌化器.
每个标记在解析器内调用不同的函数.
什么更有效:

  • std :: functions/boost :: functions的映射
  • 开关盒

c++ parsing tokenize

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

你如何在bash中解析文件名?

我的文件名格式如下:

system-source-yyyymmdd.dat

我希望能够使用" - "作为分隔符来解析文件名的不同位.

bash shell parsing cut tokenize

26
推荐指数
4
解决办法
4万
查看次数

用于电子邮件的ElasticSearch Analyzer和Tokenizer

在以下情况下,我无法在Google或ES中找到完美的解决方案,希望有人可以在这里提供帮助.

假设在"email"字段下存储了五个电子邮件地址:

1. {"email": "john.doe@gmail.com"}
2. {"email": "john.doe@gmail.com, john.doe@outlook.com"}
3. {"email": "hello-john.doe@outlook.com"}
4. {"email": "john.doe@outlook.com}
5. {"email": "john@yahoo.com"}
Run Code Online (Sandbox Code Playgroud)

我想完成以下搜索方案:

[搜索 - >接收]

"john.doe@gmail.com" - > 1,2

"john.doe@outlook.com" - > 2,4

"john@yahoo.com" - > 5

"john.doe" - > 1,2,3,4

"约翰" - > 1,2,3,4,5

"gmail.com" - > 1,2

"outlook.com" - > 2,3,4

前三个匹配是必须的,对于其余的匹配,越精确越好.已经尝试过不同的索引/搜索分析器,标记器和过滤器组合.还试图处理匹配查询的条件,但没有找到理想的解决方案,任何想法都是受欢迎的,并且对映射,分析器或使用哪种查询没有限制,谢谢.

email lucene tokenize analyzer elasticsearch

26
推荐指数
1
解决办法
1万
查看次数

在C中对字符串进行标记

我一直试图使用SPACE作为分隔符来标记字符串,但它不起作用.有没有人建议为什么它不起作用?

编辑:使用以下方式标记:

strtok(string, " ");
Run Code Online (Sandbox Code Playgroud)

代码如下

pch = strtok (str," ");
while (pch != NULL)
{
  printf ("%s\n",pch);
  pch = strtok (NULL, " ");
}
Run Code Online (Sandbox Code Playgroud)

c string tokenize

24
推荐指数
4
解决办法
12万
查看次数

如何在java中的引号之间获取数据?

我有这行文字,引号的数量可能会改变如下:

Here just one "comillas"
But I also could have more "mas" values in "comillas" and that "is" the "trick"
I was thinking in a method that return "a" list of "words" that "are" between "comillas"
Run Code Online (Sandbox Code Playgroud)

我如何获得结果应该是引号之间的数据?:

comillas
mas,comillas,trick
a,words,are,comillas

java quotes tokenize

24
推荐指数
2
解决办法
5万
查看次数

是否有比lex/flex更好(更现代)的工具来为C++生成标记化器?

我最近添加了源文件解析到现有工具,该工具从复杂的命令行参数生成输出文件.

命令行参数变得如此复杂以至于我们开始允许它们作为一个被解析的文件提供,就像它是一个非常大的命令行一样,但语法仍然很尴尬.所以我添加了使用更合理的语法解析源文件的功能.

我使用flex 2.5.4 for windows为这个自定义源文件格式生成了tokenizer,并且它有效.但我讨厌代码.全局变量,奇怪的命名约定以及它生成的c ++代码非常糟糕.现有的代码生成后端粘在flex的输出上 - 我不使用yacc或bison.

我即将重新回到代码中,我想使用更好/更现代的工具.有谁知道的东西.

  • 在Windows命令提示符下运行(Visual Studio集成是可以的,但我使用make文件来构建)
  • 生成适当的封装C++标记生成器.(没有全局变量)
  • 使用正则表达式来描述标记化规则(与lex语法兼容)
  • 不强迫我使用c-runtime(或伪造它)进行文件读取.(从记忆中解析)
  • 当我的规则强制令牌器回溯(或自动修复)时警告我
  • 让我完全控制变量和方法名称(所以我可以符合我现有的命名约定)
  • 允许我将多个解析器链接到单个.exe而不会发生名称冲突
  • 如果我愿意,可以生成UNICODE(16位UCS-2)解析器
  • 不是集成的tokenizer +解析器生成器(我想要更换lex,而不是lex + yacc替换)

如果这是唯一可用的东西,我可能会使用刚生成标记化表的工具.

c++ windows lex tokenize

22
推荐指数
4
解决办法
4351
查看次数

PHP tokenizer有哪些实际用途?

什么是PHP Tokenizer的实用和日常使用示例?

有没有人用过这个?

php tokenize

22
推荐指数
3
解决办法
1万
查看次数

标签 统计

tokenize ×10

parsing ×3

c++ ×2

elasticsearch ×2

php ×2

analyzer ×1

bash ×1

c ×1

cut ×1

email ×1

java ×1

lex ×1

lexer ×1

lucene ×1

namespaces ×1

quotes ×1

shell ×1

string ×1

text ×1

windows ×1