问题标签 [chomp]

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 投票
5 回答
1345 浏览

perl - 我们在 Perl 中有 autochomp 吗?

这是我的 Perl 代码用于监视 Unix 文件夹的样子:

  • 每次作业后都做一个chomp看起来不太好。有没有办法做一个“autochomp”?

  • 我是 Perl 新手,可能没有以最好的方式编写此代码。欢迎任何改进代码的建议。

0 投票
4 回答
8440 浏览

ruby - 我怎样才能一次咀嚼数组中的每一行?

为了编写更简洁的代码...

0 投票
3 回答
741 浏览

perl - Perl 中的 chomp() 用法

我有一个 XML 文件。文件中有一些空白行。我怎样才能只删除空行?我尝试chomp()了方法,发现它将删除所有新行符号。我仍然需要输出标准的 XML 文件格式。

下面的输出形式是预期的。

0 投票
6 回答
2771 浏览

perl - 为什么我的 Perl 程序没有从输入文件中读取?

我正在尝试读取此文件:

使用这个:

但我没有得到任何输出。我在这里想念什么?我试图将文件中的所有行存储到一个数组中,并在一行上打印出所有内容。为什么不像它应该的那样从文件中删除换行符?

0 投票
1 回答
76 浏览

ruby - Code never enter any of the if statements

I enter in 1 or 2 or 3 and I always get the "Please enter a valid option" message. I'm guessing that's because the chomp method retrieves the input as a string.

Any way around this sans using quotes around the options?

0 投票
3 回答
14878 浏览

perl - Perl chomp 不会删除所有的换行符

我有如下代码:

但是,当我打印它时,它仍然有换行符?

0 投票
3 回答
671 浏览

perl - 如何将多行处理/存储到从 perl 中的文件读取的单个字段中?

我正在尝试在 perl 中处理文本文件。我需要将文件中的数据存储到数据库中。我遇到的问题是某些字段包含换行符,这让我有点失望。包含这些字段的最佳方法是什么?

示例 data.txt 文件:

当前(损坏的)Perl 脚本(示例):

从示例中可以看出,在 ID 2 的情况下,它被分成几行,在尝试引用那些未定义的变量时导致错误。您将如何将它们分组到正确的字段中?

提前致谢!(我希望问题足够清楚,很难定义标题)

0 投票
2 回答
379 浏览

perl - 使用 perl chomp 检查 HTTP 请求的最后一个空白行

我对 Perl 很陌生。我的 Perl 程序正在从浏览器获取 HTTP 请求消息,我想检测最后一个空行。

我试图使用$_ =~ /\S/,但它不起作用:

输出是




我试图使用 chomp(),这对我也不起作用:

输出:

先谢谢了~

0 投票
1 回答
9634 浏览

java - Java如何从字符串中删除回车符(HEX 0A)?

如果一个特定的字符串包含一个不可见的换行符(不是 \n,而是十六进制的 0A,因为这个值是从数据库中传递下来的),我怎么能把它咬掉?Apache Chomp 会有帮助吗?

http://commons.apache.org/lang/api-2.5/org/apache/commons/lang/StringUtils.html#chomp(java.lang.String )

从数据库返回的文本的十六进制形式为“5761 6920 4D61 6E0D 0A”

它翻译为带有回车的“Wai Man”。

0 投票
5 回答
1141 浏览

perl - 关于chomp的澄清

我现在正在课间休息,并决定花时间学习 Perl。我正在使用Beginning Perl ( http://www.perl.org/books/beginning-perl/ ),并且正在完成第三章末尾的练习。

其中一个练习要求我“将您的重要电话号码存储在散列中。编写一个程序以根据该人的姓名查找号码。”

无论如何,我想出了这个:

它就是行不通。我不断收到此错误消息:

在 hello.plx 第 17 行第 1 行的串联 (.) 或字符串中使用未初始化的值

我尝试更多地使用代码,但每个“解决方案”看起来都比它之前的“解决方案”更复杂。最后,我决定检查答案。

我的代码和答案之间的唯一区别是chomp ($input);after的存在<STDIN>;

现在,作者chomp在前面的例子中使用过,但他并没有真正涵盖chomp在做什么。所以,我在 www.perlmeme.org 上找到了这个答案:

chomp()函数将(通常)从字符串末尾删除任何换行符。我们通常说的原因是它实际上删除了与$/(输入记录分隔符)的当前值匹配的任何字符,并且$/默认为换行符。


无论如何,我的问题是:

  1. 删除了哪些换行符?Perl 会自动将 a 添加"\n"到来自 的输入<STDIN>吗?我只是有点不清楚,因为当我读到“它实际上删除了任何与”的当前值匹配的字符时$/,我不禁想“我不记得$/在我的代码中的任何地方放了一个”。

  2. 我想尽快制定最佳实践 - 最好总是chomp在之后包含,<STDIN>或者是否存在不必要的场景?