首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么Ruby的‘get’包含结束换行符?

为什么Ruby的‘get’包含结束换行符?
EN

Stack Overflow用户
提问于 2011-06-22 05:58:44
回答 3查看 7.2K关注 0票数 19

我从不需要从gets得到的结尾换行符。一半的时间,我忘了chomp它,这是一个痛苦的....

为什么它会在那里?

EN

回答 3

Stack Overflow用户

发布于 2011-06-22 06:15:12

puts (听起来很相似)一样,它是使用\n字符来处理行的。

gets有一个可选的参数,用于“拆分”输入(或者“只读直到它到达”)。它默认使用特殊的全局变量$/,默认情况下包含一个\n

gets是一个用于读取流的非常通用的方法,并且包含了这个分隔符。如果它不这样做,流内容的一部分将丢失。

票数 7
EN

Stack Overflow用户

发布于 2013-01-08 02:38:33

代码语言:javascript
复制
var = gets.chomp 

这为您将所有这些都放在了一行中。

票数 5
EN

Stack Overflow用户

发布于 2011-06-22 06:20:50

如果您查看IO#gets的文档,您会注意到该方法接受一个可选参数sep,该参数默认为$/ (输入记录分隔符)。您可以决定在除换行符之外的其他内容上拆分输入,例如段落(“零长度分隔符一次读取输入一个段落(输入分隔段落中的两个连续换行符)”):

代码语言:javascript
复制
>> gets('')
dsfasdf
fasfds


dsafadsf    #=> "dsfasdf\nfasfds\n\n"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6432524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档