首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

StdIn,如何读取由空格分隔的字符串,而不会陷入无限循环,等待更多用户输入

StdIn是标准输入流,用于从用户或其他程序获取输入数据。要读取由空格分隔的字符串,可以使用以下方法,以避免陷入无限循环等待更多用户输入:

  1. 使用编程语言提供的输入函数:根据所使用的编程语言,可以使用相应的输入函数来读取由空格分隔的字符串。例如,在Python中,可以使用input()函数来获取用户输入,并使用字符串的split()方法将其分割成列表。

示例代码(Python):

代码语言:python
复制
input_string = input("请输入由空格分隔的字符串:")
string_list = input_string.split()
  1. 使用正则表达式:使用正则表达式可以方便地匹配由空格分隔的字符串,并提取出每个字符串。

示例代码(Python):

代码语言:python
复制
import re

input_string = input("请输入由空格分隔的字符串:")
string_list = re.findall(r'\S+', input_string)
  1. 使用字符串处理函数:根据编程语言的字符串处理函数,可以使用相应的函数来处理输入字符串,将其分割成列表。

示例代码(Java):

代码语言:java
复制
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入由空格分隔的字符串:");
        String inputString = scanner.nextLine();
        String[] stringArray = inputString.split(" ");
    }
}

以上方法可以帮助读取由空格分隔的字符串,而不会陷入无限循环等待更多用户输入。对于不同的编程语言和开发环境,可能会有不同的实现方式和函数。具体的实现方法可以根据使用的编程语言和开发环境进行调整。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

linux中getchar函数用法,linux getchar函数使用

/getchar [回车] //提示:当程序运行到while循环getchar时,界面等待用户输入字符,直到回车出现 input your strings: 输入字符串:hello getchar...2) getchar每次只读取一个字符,如果程序中不采用循环只设置一个getchar()语句,则getchar只读取输入字符串首个字符,其余字符依然留在缓存区中(若将程序while循环去掉只输出第一个字符...重新编译并运行程序,输入字符串:hello[回车] 得第一次运行结果 当程序首次执行到while中getchar时,getchar函数等待用户输入,getchar函数一直等待用户输入,当用户按下回车表示用户输入完毕...,getchar开始逐个读取输入字符串,将用户输入所有字符读取完毕后(因为while条件为真),再次等待用户输入: 此次输入字符’n’,注意输入字符’n’时位置,为什么不是在o后面呢,而是换了一行而且相隔了一个空格呢...getchar函数读取,因为while循环条件已经为假)并得到以下输出界面 String输入字符串长度为6在一次表明getchar读取用户输入回车。

3.1K30

shell循环语句

文件中 使用ping命令检测各主机连通性 1.1、for循环读取文件 for i in `cat 文件名` 1.2、示例:生成随机密码 脚本自动生成一个8位随机密码,大小英文字母和数字 字符串长度...${#变量名} ​ 截取字符串 ${变量名:开始下标:截取长度} ​ 字符串追加 变量1+=变量2 1.3、for循环分隔符 默认分隔符 " " \t \n 空格 制表符 换行符...#执行wait,等待上面所有后台进程执行完毕后,才会执行后面的语句 #没有wait,后面语句不会等待后台进程,会对一些需要上下文依赖关系程序执行错误 wait cat /root/shell4/...并且可以返回指定状态码 exit执行后,脚本后面所有语句都不会执行 5.2、break 跳出当前循环体,去执行循环后面的语句 break跳出单层循环,break 2跳出2层循环...5.3、continue 终止某次循环执行,但是不会完全终止整个循环 while until循环中使用需要谨慎,因为continue放在变量迭代语句前会造成死循环 发布者:全栈程序员栈长,

60210

Awk学习笔记

数据可以来自标准输入、一个或多个文件,或其它命令输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。...END:让用户在最后一条输入记录被读取之后发生动作。 3.2. 操作 操作一人或多个命令、函数、表达式组成,之间换行符或分号隔开,并位于大括号内。...如$ awk '{print $1,$3}' test将打印test文件中第一和第三个以空格分开列(域)。 6.3. 域分隔符 内建变量FS保存输入分隔值,默认是空格或tab。...,并等待用户应答。当一行输入完毕后,getline函数从终端接收该行输入,并把它储存在自定义变量name中。...注意,如果文件不存在,getline返回-1,如果到达文件末尾就返回0,如果读到一行,就返回1,所以命令 while (getline < "/etc/passwd")在文件不存在情况下将陷入无限循环

2.4K30

【linux命令讲解大全】049.深入了解awk:文本和数据处理编程语言

awk 文本和数据进行处理编程语言 补充说明 awk 是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令输出。...它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。...,fs可以是字符串或正则表达式,如-F:,默认分隔符是连续空格或制表符 -v var=value:赋值一个用户定义变量,将外部变量传递给awk -f scripfile:从脚本文件中读取awk命令...{ commands } pattern{ commands } END{ commands }' 执行BEGIN{ commands }语句块中语句; 从文件或标准输入(stdin)读取一行,然后执行...时,它就打印当前行,当print参数是以逗号进行分隔时,打印时则以空格作为定界符。

9610

C语言中从键盘输入字符串一些问题

所以不建议使用gets()函数 3.fgets() fgets(char* str, int n,stdin )函数在输入字符串时是从标准输入流中读取一个长度为(n – 1)字符串 , 并存放到字符数组...jklm\n 此时 字符串str1是”abcdefghi” 字符串str2是”jklm” 这是因为输入str1函数在读取标准输入流中字符时读到 i 时读取完成 , 此时剩下jklm\n还在缓存区静静地等待读取...而且也不会像fgets()函数一样输入字符串小于数组长度(n – 1)时有换行符 ‘\n’ 问题 当然 , 循环形式和输入字符函数还有其他, 例如, 用scanf(“%c”,..., 也不会越界 , 也没有从缓存区读取字符存入字符数组问题 小结 : 在C语言中输入一个字符串时应该根据实际情况 , 灵活运用输入方法 , 并不是有缺点就不能用 ....版权声明:本文内容互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

1.6K20

08·Shell编程-循环

do cmd1 cmd2 done # 变量表达式: 1.可以是以空格分隔字符串 2.可以是以空格分隔数字 3.可以是数组 4.可以是命令结果 5.可以是文件内容(但是要注意for...并不是按行读取,如果每一行都没有空格还行,但是一旦遇到空格就...) # 例: ## 循环空格分隔字符串 for name in "zls cls wls";do echo $name done ## 循环空格分隔数字 for num in 1...下面的例子中,脚本进入死循环直至用户输入数字大于5。要跳出这个循环,返回到shell提示符下,需要使用break命令。 [root@zabbix01 ~]# vim break.sh #!...Please Input A Number: 5 Please Input A Number: 6 你输入是 6 Please Input A Number: 7 你输入是 7 循环读取文件内容

28410

收藏~ 一篇教会你写90%shell脚本

总结来说,Shell是一个命令解释器,它通过接受用户输入Shell命令来启动、暂停、停止程序运行或对计算机进行控制。...printf作为输出移植性好,建议使用printf printf printf 不会像 echo 自动添加换行符,我们可以手动添加 \n 无大括号,直接以空格分隔 格式:printf format-string...path=${BIN}/nodetool # 可直接使用 输入输出重定向 一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件: 标准输入文件(stdin):stdin文件描述符为0,Unix...程序默认从stdin读取数据。...1 : 将 stdout 和 stderr 合并后重定向到 file 读取外部输入 命令:read arg (脚本读取外部输入并赋值到变量上) 在shell脚本执行到上述命令时,停止脚本执行并等待外部输入

2.3K10

python题目 1000: 简单a+b

题目要求我们从输入读取两个整数a和b,然后计算它们和。这听起来很简单,但有一些额外条件需要注意: 输入包含多组测试数据。这意味着你需要一直接收输入,直到没有更多测试数据为止。...这意味着输入整数a和b范围不会超过1024,所以你不需要担心大整数情况。 解决问题 让我们逐步解决这个问题。 步骤1:读取输入 首先,我们需要从用户那里获取输入。...在Python中,可以使用 input() 函数来获取用户输入。这个函数会等待用户输入一行文本,然后返回这行文本字符串。....split(): .split() 是一个字符串方法,用于将字符串拆分为一个字符串列表(默认情况下,以空格分隔符)。...这是一种常见方式来处理从用户输入读取一组空格分隔整数。例如,如果用户输入 "10 20",那么 a 将被赋值为 10,b 将被赋值为 20。

12710

C语言 getchar()原理及易错点解析

,它作用是从stdin流中读入一个字符,也就是说,如果stdin有数据的话不用输入它就可以直接读取了,第一次getchar()时,确实需要人工输入,但是如果你输了多个字符,以后getchar()再执行时就会直接从缓冲区中读取了...’\n’.要理解这一点,之所以你输入一系列字符被依次读出来,是因为循环作用使得反复利用getchar在缓冲区里读取字符,不是getchar可以读取多个字符,事实上getchar每次只能读取一个字符...作用2:前面的scanf()在读取输入时会在缓冲区中留下一个字符’\n’(输入完按回车键所致),所以如果不在此加一个getchar()把这个回车符取走的话,接下来scanf()就不会等待从键盘键入字符...getchar()不会跳过换行符,所以在进入下一轮迭代时,还没来得及输入字符,它就读取了换行符,然后将其赋值给了ch。ch是换行符正式终止循环条件。 如何改进??...所以第一个程序里第二个scanf(“%d”)忽略掉了空格,正确输入了数字。 版权声明:本文内容互联网用户自发贡献,该文观点仅代表作者本人。

1.3K60

GoLang读写数据---上

实例演示 ---- 读取用户输入 我们如何读取用户键盘(控制台)输入呢?...从键盘和标准输入 os.Stdin 读取输入,最简单办法是使用 fmt 包提供相关函数。...但是scan却可以,它虽然没有收走缓冲区回车符,但是不会把回车符读进去,遇到回车它会继续读取下一个数据,scanf会按照我们给格式(如%d去读取数据),但是肯定读不进去,所以就读取失败了 ---...接着,我们在一个无限循环中使用 ReadString(‘\n’) 或 ReadBytes(‘\n’) 将文件内容逐行(行结束符 ‘\n’)读取出来。.... ---- 3) 按列读取文件中数据 如果数据是按列排列并用空格分隔,你可以使用 fmt 包提供以 FScan 开头一系列函数来读取他们。

54730

【Python 千题 —— 基础篇】学生名单

题目描述 编写一个程序,接受输入若干个学生姓名,将这些姓名添加到一个列表中,以便老师查阅。每个姓名应该作为一个单独字符串输入,使用回车来分隔不同姓名。...输入描述 输入若干个字符串,每个字符串表示一个学生姓名,用回车分隔。 输出描述 程序将接受输入学生姓名,并输出转换后列表,其中每个姓名都作为列表一个元素。...代码讲解 下面是本题代码: # 描述: 输入若干个学生姓名,将姓名添加到列表中,以便老师查阅。 # 输入: 输入若干个字符串,每个字符串表示一个学生姓名,用回车分隔。...student_list = [] 循环读取输入学生姓名: 我们使用一个无限循环,以便可以连续输入多个学生姓名。...相关知识点 这个Python编程习题涉及了以下主要知识点: input函数: input() 是Python中内置函数,用于从用户读取输入。它将等待用户在控制台中输入数据,并返回用户输入内容。

19640

PERL学习笔记---正则表达式应用

符号^(脱字字符◆)表示在字符串开头进行匹配,符号$则表示在结尾◆。因此,模式/^fred/只匹配字符串开头部分; 它不会匹配上manfred man。.../rock$/只在结尾处匹配;其不会匹配上knute rockne。 ◆ 锚定不仅仅针对字符串两头。词界锚定,\b,是针对单词使用。...绑定操作符(binding operator:=~) ),$likes_perl 将根据用户输入得到一个boolean 值。它有一些quick-and-ditry,因为输入 行很快就被丢弃了。...这段代码将读入一行,右边模式进行匹配,然后丢弃此输入◆。它没有使用$_。 ◆输入字符不会自动存储在$_中,除非行输入操作()单独出现在while 循环条件判断部分。...但它们不仅是同一事物两个不同名字;\4 是模式正在匹配是引 用$4 是模式匹配完成后再引用。想了解更多关于backreferences 信息,可参见perlre 帮助手册。

67230

shell-编写shell脚本所需基础语法

总结来说,Shell是一个命令解释器,它通过接受用户输入Shell命令来启动、暂停、停止程序运行或对计算机进行控制。...path=${BIN}/nodetool # 可直接使用 输入输出重定向 一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件: 标准输入文件(stdin):stdin文件描述符为0,Unix...程序默认从stdin读取数据。...>&1 : 将 stdout 和 stderr 合并后重定向到 file 读取外部输入 命令:read arg (脚本读取外部输入并赋值到变量上) 在shell脚本执行到上述命令时,停止脚本执行并等待外部输入...-p 用户密码 -h 服务器ip地址 -D 连接数据库 -N 不输出列信息 -B 使用tab键 代替 分隔符 -e 执行SQL语句 退出脚本 命令:exit 在退出脚本时使用不同错误码

87320

shell 快速入门

rm tmp.txt # until 循环 # until 与 while 类似,区别在于 until 判断为 否,会继续循环 while 判断为 真,才继续循环 # until ((0))...会无限循环 COUNT=0 until [ $COUNT -gt 5 ] do echo $COUNT let "COUNT++" done # select 循环 # select 是一种菜单式循环方式...,语法结构与 for 相似,每次循环用户选择 echo "choose your menu:" select MENU in "apple" "banana" "orange" "exit" do.../bin/bash # 重定向 # 重定向是指将原本标准输入输出内容,改为输入输出其他文件或设备 # 系统在启动一个进程时,会为该进程打开三个文件: # 标准输入stdin)、标准输出(stdout...# >& 标识输出重定向,讲一个标识输出重定向到另一个标识输入 # < 标准输入重定向,命名将从指定文件中读取输入不是从键盘中读取输入 # | 管道,从一个命令中读取输出,作为另一个命令输入

1.8K30

一篇教会你写90%shell脚本!

总结来说,Shell是一个命令解释器,它通过接受用户输入Shell命令来启动、暂停、停止程序运行或对计算机进行控制。...,建议使用printf printf printf 不会像 echo 自动添加换行符,我们可以手动添加 \n 无大括号,直接以空格分隔 格式:printf format-string [arguments...=${BIN}/nodetool # 可直接使用 #### 输入输出重定向 一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件: * 标准输入文件(stdin):stdin文件描述符为...0,Unix程序默认从stdin读取数据。...shell脚本执行到上述命令时,停止脚本执行并等待外部输入,将外部输入赋值到arg变量上,继续执行脚本 #### 文件引用 引用其他文件之后,可以使用其变量、函数等等,相当于将引用文件包含进了当前文件

1.5K01

Linux系统开发: 学习linux三剑客(awk、sed、grep)(下)

数据可以来自标准输入(stdin)、一个或多个文件,或其它命令输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下一个强大编程工具。...第一步:执行BEGIN{ commands }语句块中语句; 第二步:从文件或标准输入(stdin)读取一行,然后执行pattern{ commands }语句块,它逐行扫描文件,从第一行到最后一行重复这个过程...时,它就打印当前行,当print参数是以逗号进行分隔时,打印时则以空格作为定界符。...[A] FILENAME 当前输入文件名。 [A] FS 字段分隔符(默认是任何空格)。 [G] ARGIND 命令行中当前文件位置(从0开始算)。...[G] FIELDWIDTHS 字段宽度列表(用空格分隔)。 [G] IGNORECASE 如果为真,则进行忽略大小写匹配。 [N] RSTART match函数所匹配字符串第一个位置。

4.8K10

【知识总结】Shell脚本编程入门

printf 使用引用文本或空格分隔参数,外面可以在 printf 中使用格式化字符串,还可以制定字符串宽度、左右对齐方式等。...break命令 break命令允许跳出所有循环(终止执行后面的所有循环)。 下面的例子中,脚本进入死循环直至用户输入数字大于5。要跳出这个循环,返回到shell提示符下,需要使用break命令。 #!...输入 1 到 5 之间数字:7 你输入数字不是 1 到 5 之间! 游戏结束 continue continue命令与break命令类似,只有一点差别,它不会跳出所有循环,仅仅跳出当前循环。...游戏结束" break ;; esac done 运行代码发现,当输入大于5数字时,该例中循环不会结束,语句 echo "游戏结束" 永远不会被执行。...重定向深入讲解 一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件: 标准输入文件(stdin):stdin文件描述符为0,Unix程序默认从stdin读取数据。

2.6K20
领券