迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

在 Ruby 中使用 Get 接受用户输入

作者:迹忆客 最近更新:2023/03/20 浏览次数:

在 Ruby 中构建命令行 (CLI) 应用程序时,一个常见的功能是接收来自用户的输入,包括用户名或是/否响应。这就是 gets 关键字有用的地方。

本篇文章将展示如何构建一个非常简单的 CLI 程序,该程序允许用户输入他们的名字并使用他们输入的名字问候他们。

示例代码:

puts "Hi, welcome to my app."
puts "Enter your name to get started: "
name = gets
puts "Hello #{name}, nice to have you here"

输出:

Hi, welcome to my app.
Enter your name to get started:

以上是我运行代码后得到的输出。此时,程序要求我输入我的名字。这就是 gets 所做的;它创建一个提示并等待用户输入。

下面是我输入我的名字为 John 并按 Enter 键后得到的完整输出。

Hi, welcome to my app.
Enter your name to get started:
John
Hello John
, nice to have you here

你一定已经注意到上面的输出中有一些奇怪的东西。为什么打招呼 Hello John, nice to have you hereJohn 之后中断?要了解实际情况,请检查变量 name

示例代码:

puts "Hi, welcome to my app."
puts "Enter your name to get started: "
name = gets
puts name.inspect
puts "Hello #{name}, nice to have you here"

输出:

Hi, welcome to my app.
Enter your name to get started:
John
"John\n"
Hello John
, nice to have you here

以上是我输入 John 作为我的名字后得到的完整输出。你可以看到 name 变量显示为 John\n

这就是 gets 的行为方式;它会自动将\n 附加到它作为用户输入接收到的任何值上,这称为换行符,每当它出现在文本中时,这意味着文本应该在该点中断,并在新行上继续。

解决此问题的一个好方法是使用 chomp 方法,该方法删除任何尾随特殊字符,不仅是换行符 (\n),还包括回车符 (\r)。

示例代码:

puts "Hi, welcome to my app."
puts "Enter your name to get started: "
name = gets.chomp
puts "Hello #{name}, nice to have you here"

输出:

Hi, welcome to my app.
Enter your name to get started:
John
Hello John, nice to have you here

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

用 Ruby 解析 XML

发布时间:2023/03/21 浏览次数:112 分类:编程语言

本文展示了如何在 Ruby 中使用 gem nokogiri 解析 XML 文件。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便