标签: tokenize

从输入文件逐行输入并使用strtok()标记并输出到输出文件中

我想要做的是输入一个文件LINE BY LINE并标记并输出到输出文件.我能够做的是输入文件中的第一行但我的问题是我无法输入下一行要标记化的行,以便它可以保存为输出文件中的第二行,这是我到目前为止输入文件中的第一行所能做的.

#include <iostream>
#include<string>    //string library
#include<fstream>    //I/O stream input and output library

using namespace std;
const int MAX=300;    //intialization a constant called MAX for line length 
int main()
{
   ifstream in;     //delcraing instream
   ofstream out;    //declaring outstream

   char oneline[MAX];   //declaring character called oneline with a length MAX

   in.open("infile.txt");  //open instream
   out.open("outfile.txt");  //opens outstream
   while(in)
   {

    in.getline(oneline,MAX); //get first line in instream

    char *ptr;      //Declaring a character pointer
    ptr = strtok(oneline," ,");
    //pointer scans first token in line …
Run Code Online (Sandbox Code Playgroud)

c++ string iostream tokenize visual-c++

13
推荐指数
2
解决办法
5718
查看次数

使用ANT替换基于属性文件的所有标记

我很确定这是一个简单的问题,我已经看过它之前没有确切的答案.

我有几个用于不同环境的属性文件,即xxxx-dev,xxxx-test,xxxx-live

属性文件包含以下内容:

server.name=dummy_server_name
server.ip=127.0.0.1
Run Code Online (Sandbox Code Playgroud)

我使用的模板文件看起来像:

<...>
   <server name="@server.name@" ip="@server.ip@"/>
</...>
Run Code Online (Sandbox Code Playgroud)

以上是一个非常原始的例子,但我想知道是否有办法告诉ANT基于属性文件替换所有令牌,而不是必须为每个令牌行硬编码...即

<replacetokens>
   <token key="server.name" value="${server.name}"/>
   <token key="server.ip" value="${server.ip}"/>
</replacetokens>
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒!

ant tokenize

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

在C++中将字符串拆分为数组

可能重复:
如何在C++中拆分字符串?

我有一个数据输入文件,每行都是一个条目.在每一行中,每个"字段"由一个空格""分隔,所以我需要按空格分割线条.其他语言有一个叫做split(C#,PHP等)的函数,但是我找不到一个用于C++的函数.我怎样才能做到这一点?这是我的代码获取行:

string line;
ifstream in(file);

while(getline(in, line)){

  // Here I would like to split each line and put them into an array

}
Run Code Online (Sandbox Code Playgroud)

c++ string tokenize

13
推荐指数
3
解决办法
5万
查看次数

在elasticsearch中搜索带空格的名称(文本)

搜索包含空格的名称(文本),给我带来问题,我的映射类似于

"{"user":{"properties":{"name":{"type":"string"}}}}"
Run Code Online (Sandbox Code Playgroud)

理想情况下它应返回并按如下方式对结果进行排名

1) Bring on top names that exact match the search term (highest score)
2) Names that starts with the search term (high score)
3) Names that contains the exact search term as substring (medium score)
4) Names that contains any of the search term token  (lowest score)
Run Code Online (Sandbox Code Playgroud)

示例对于elasticsearch中的以下名称

Maaz Tariq
Ahmed Maaz Tariq
Maaz Sheeba
Maaz Bin Tariq
Sana Tariq
Maaz Tariq Ahmed
Run Code Online (Sandbox Code Playgroud)

搜索"Maaz Tariq",结果应按以下顺序排列

Maaz Tariq (highest score)
Maaz Tariq Ahmed (high score)
Ahmed Maaz Tariq …
Run Code Online (Sandbox Code Playgroud)

search tokenize analyzer elasticsearch

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

如何使用lucene 5.xx的StandardTokenizer

有很多示例显示如何使用StandardTokenizer,如下所示:

TokenStream tokenStream = new StandardTokenizer(
            Version.LUCENE_36, new StringReader(input));
Run Code Online (Sandbox Code Playgroud)

但在较新的Lucene版本中,此构造函数不可用.新构造函数如下所示:

StandardTokenizer(AttributeFactory factory)
Run Code Online (Sandbox Code Playgroud)

这个AttributeFactory的作用是什么?如何在较新版本的Lucene中对String进行标记?

java lucene tokenize

13
推荐指数
1
解决办法
4440
查看次数

Python re.split()vs nltk word_tokenize和sent_tokenize

我正在经历这个问题.

我只是想知道NLTK在单词/句子标记化中是否比正则表达更快.

python regex nlp tokenize nltk

13
推荐指数
1
解决办法
8687
查看次数

Pythonic实现tokenizer的方法

我将在Python中实现一个tokenizer,我想知道你是否可以提供一些样式建议?

我之前在C和Java中实现了一个标记化器,所以我对理论很好,我只想确保我遵循pythonic样式和最佳实践.

列出令牌类型:

例如,在Java中,我会有一个像这样的字段列表:

public static final int TOKEN_INTEGER = 0
Run Code Online (Sandbox Code Playgroud)

但是,显然,我没有办法(我认为)在Python中声明一个常量变量,所以我可以用普通的变量声明替换它,但这并没有让我成为一个很好的解决方案,因为声明可能会被改变.

从Tokenizer返回令牌:

有没有更好的替代方案,只需返回一个元组列表,例如

[ (TOKEN_INTEGER, 17), (TOKEN_STRING, "Sixteen")]?
Run Code Online (Sandbox Code Playgroud)

干杯,

皮特

python coding-style tokenize

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

如何在Ruby中对此字符串进行标记?

我有这个字符串:

%{Children^10 Health "sanitation management"^5}
Run Code Online (Sandbox Code Playgroud)

我想将其转换为将其标记为哈希数组:

[{:keywords=>"children", :boost=>10}, {:keywords=>"health", :boost=>nil}, {:keywords=>"sanitation management", :boost=>5}]
Run Code Online (Sandbox Code Playgroud)

我知道StringScanner和Syntax gem,但我找不到足够的代码示例.

有什么指针吗?

ruby parsing text-parsing tokenize

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

C++使用正则表达式对字符串进行标记

我正试图从头开始学习一些C++.
我精通python,perl,javascript,但在过去的课堂环境中只是简单地遇到过C++.请原谅我的问题的天真.

我想使用正则表达式拆分一个字符串,但是没有太多运气找到一个清晰,明确,有效和完整的如何在C++中执行此操作的示例.

在perl中,这是行动是常见的,因此可以以微不足道的方式完成,

/home/me$ cat test.txt
this is  aXstringYwith, some problems
and anotherXY line with   similar issues

/home/me$ cat test.txt | perl -e'
> while(<>){
>   my @toks = split(/[\sXY,]+/);
>   print join(" ",@toks)."\n";
> }'
this is a string with some problems
and another line with similar issues
Run Code Online (Sandbox Code Playgroud)

我想知道如何最好地完成C++中的等价物.

编辑:
我想我在boost库中找到了我想要的东西,如下所述.

boost regex-token-iterator(为什么不强调工作?)

我想我不知道该搜索什么.


#include <iostream>
#include <boost/regex.hpp>

using namespace std;

int main(int argc)
{
  string s;
  do{
    if(argc == 1)
      {
        cout << "Enter text to …
Run Code Online (Sandbox Code Playgroud)

c++ regex split tokenize

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

C++模板角度支架陷阱 - 什么是C++ 11修复?

在C++ 11中,这是现在有效的语法:

vector<vector<float>> MyMatrix;
Run Code Online (Sandbox Code Playgroud)

而以前,它必须这样写(注意空格):

vector<vector<float> > MyMatrix;
Run Code Online (Sandbox Code Playgroud)

我的问题是标准用于允许第一个版本的修复是什么?

它可以像制作>令牌一样简单而不是>>吗?如果不是这样,那么这种方法有什么用呢?

我认为这些表格myTemplate< x>>3 >不是问题,因为你可以通过这样做来消除它们的歧义myTemplate<(x>>3)>.

c++ parsing templates tokenize

12
推荐指数
1
解决办法
6668
查看次数