问题标签 [text-parsing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
219 浏览

sed - 不确定的分隔符,用 sed 解析杂乱的日志

我正在处理#huge# 文本文件(从 100mb 到 1gb),我必须解析它们以提取一些特定的数据。令人讨厌的是文件没有明确定义的分隔符。

例如:

我必须删除受“(引号)限制的字符串中的空格,问题是我不能删除引号“外部”的空格(否则某些数字会合并)。我找不到像样的 sed 解决方案,有人可以帮我弄这个吗?

0 投票
12 回答
21615 浏览

csv - awk 可以处理在引用字段中包含逗号的 CSV 文件吗?

我正在使用 awk 来计算 csv 文件中一列的总和。数据格式类似于:

我正在使用这个 awk 脚本来计算总和:

name 字段中的某些值包含逗号,这会破坏我的 awk 脚本。我的问题是:awk 能解决这个问题吗?如果是,我该怎么做?

谢谢你。

0 投票
3 回答
1284 浏览

regex - Perl将文本字符串(来自HTML页面,文本文档等)逐行拆分为数组?

这是一个奇怪的问题,至少对我来说是这样,因为我不完全理解这其中的全部内容。基本上,我一直在执行此过程,将抓取的文档(例如网页)保存到.txt文件中。然后我可以很容易地使用 Perl 来读取这个文件并将每一行放入一个数组中。但是,它不是根据文档中的任何可见内容来执行此操作的(即,它不是通过 HTML 换行符进行的);它只是根据.txt格式知道新行在哪里。

但是,我想删掉这个过程,只在一个变量中做同样的事情,所以我会把.txt文件的内容放在一个字符串中,然后我想以同样的方式解析它, 逐行。对我来说,问题是我不太了解它是如何工作的,因为我真的不明白 Perl 如何能够判断新行在哪里(假设我不经常使用 HTML 换行符)只是一个基于网络的 .txt 文件(它作为网页呈现给我的刮板 www:mechanize)我正在刮,所以没有 HTML 可供使用)。我想我可以使用其他参数(例如空格)来执行此操作,但我很想知道是否有办法逐行执行此操作。任何信息表示赞赏。

我想减少文件的实际保存,以减少与我使用的服务器上的权限相关的问题,并且我也很好奇我是否可以让这个过程更有效率。

0 投票
1 回答
1115 浏览

ruby - Ruby 中的扩展日志文件格式解析器

我正在寻找 W3C 扩展日志文件格式的 ruby​​ 解析器。

http://www.w3.org/TR/WD-logfile.html

理想情况下,它将根据日志文件中的字段生成一个多维数组。我正在考虑类似于 FasterCSV ( http://fastercsv.rubyforge.org/ ) 处理 CSV 文件的方式。

有谁知道这样的图书馆是否存在?如果没有,有人可以就我如何建造一个提供建议吗?

我很确定我可以弄清楚将文本文件转换为数组的字符串操作。我最关心的是处理大量日志文件(因此我可能需要将数据流回磁盘或其他东西)。

真诚的,卡梅伦

0 投票
6 回答
1304 浏览

python - 从python中的列表中删除值

我在由空格分隔的单行上有一个包含名称和值的大文件:

name1 name2 name3....

在长长的名称列表之后是​​与名称对应的值列表。这些值可以是 0-4 或 na。我想要做的是合并数据文件并在值为na.

例如,这个文件中的最后一行名称是这样的:

namenexttolast nameonemore namethelast 0 na 2

我想要以下输出:

namenexttolast namethelast 0 2

我将如何使用 Python 做到这一点?

0 投票
1 回答
445 浏览

excel - 解析空格/制表符分隔的文本文件并嵌入到 XL 文件中

嗨,我有这种格式的文本文件

我的输出应该是这种格式的 Excel

在这里,我编辑并详细说明了我的情况:

那么我如何将 txt 内容即时导出到 XL 或指导我完成映射两个不同文件的列的步骤。实际上我的输入是空格分隔的文本文件,或者 Excel 文件或 MS Access 数据库,其中任何一个。但输出仅在 excel 中。所以我需要一些逻辑来加载文件并映射并将文本传输到 XL 格式(97-2003)的结果文件。

0 投票
5 回答
3431 浏览

c# - 使用 C# 解析文本文件

寻找一种解析此文本文件的好方法,使用 C# 用黄色框突出显示的值。每个部分都由我忘记突出显示的 TERM # 来描述。试过这个:

可以肯定地说我正在正确阅读行并删除“空白”。虽然,作为一个编程爱好者,不确定一种有效的方法来准确“知道”我从这份报告中获得了我需要的价值。有什么建议吗?

0 投票
2 回答
2205 浏览

c# - 使用 ASP.NET MVC 分页在网页上显示日志文件信息

我将日志存储在以下格式的 txt 文件中。

======8/4/2010 10:20:45 AM================================= ========

处理捐赠

======8/4/2010 10:21:42A M================================= ========

向服务器发送信息

======8/4/2010 10:21:43 AM================================= ========

我需要将这些行解析为一个列表,其中“====”行之间的信息被计为一条记录,以使用 ASP.NET MVC 中的分页显示在网页上。

示例:第一个记录条目将是

======8/4/2010 10:20:45 AM================================= =================

处理捐赠

到目前为止我没有运气。我该怎么做?

0 投票
2 回答
699 浏览

c# - 使用正则表达式匹配两个特定单词之间的所有内容

我正在尝试使用正则表达式解析 Oracle 跟踪文件。我选择的语言是 C#,但我选择在这个练习中使用 Ruby 来熟悉它。

日志文件有些可预测。大多数行(具体为 99.8%)匹配以下模式:

但是,在日志中的一些地方有很多复杂的查询,由于某种原因,跨越了几行:

截屏

关于这些条目需要指出的两件事是它们似乎会导致日志文件中的某种损坏,因为它们以不可打印的字符结尾,然后突然下一个条目在同一行开始。

由于这显然排除了逐行捕获数据,我认为下一个最佳选择是匹配单词“TIME:”与“TIME:”的下一个实例或文件末尾之间的所有内容。我不确定如何使用正则表达式来表达这一点。

有没有更有效的方法?我需要解析的日志文件将超过 1.5GB。我的意图是规范化这些行,并删除不必要的行,最终将它们作为行插入数据库中以进行查询。

谢谢!

0 投票
1 回答
132 浏览

sql - 是否有任何框架可以将类似 SQL 的查询解析为其组成部分?

我有兴趣为我使用的 CMS 编写类似 SQL 的查询语法。这个想法是 CMS 查询可以用类似 SQL 的语法编写,我会将其转换为通过 CMS API 执行。

不会有字段或表选择,所以我需要一些方法来从中获得:

基本上,我需要一些方法来根据它们的括号和 AND/OR 正确分组 WHERE 子句。

是否有一些框架可以做到这一点?什么时候完成的一些例子?我不想在这里重新发明轮子,而且我知道过去必须有人这样做。