【发布时间】:2011-06-12 23:45:08
【问题描述】:
基本上,我在文件的某些行中有空白字符串" " 或空白块或"" 为空,我想知道C++ 中是否有一个函数可以检查这一点。
*note:* 作为一个附带问题,在 C++ 中,如果我想分解一个字符串并检查它的模式,我应该使用哪个库?如果我想自己编写代码,我应该知道哪些基本函数来操作字符串?有没有好的参考资料?
【问题讨论】:
-
目前发布的许多答案似乎都缺少“或空白块”条款。我认为这个想法是找到仅包含零个或更多空格的行,其中“或更多”可能大于 1。
-
@SC:这部分问题是在大多数答案之后添加的(不必要的,IMO)澄清。 “字符串”已经是一个字符序列,不仅限于一个字符。但是,嘿,我试图提供一个解释这一点的答案,并被 Alf 抨击假设输入是 ASCII(这是一个比他所做的更合理的假设,IMO)。所以我的答案将永远处于低谷。没关系,我不需要代理。我把它留在那里,以防马克欣赏一个真正有效的答案。
-
@Ben:对不起,我没有试图“抨击”你。只是很多新手编写了对
isspace和家人的不正确简单调用。所以我认为在任何出现的地方纠正简单化的调用是非常重要的,这样阅读它的人就可以学习如何正确调用这些函数(以及不直接调用它们的危险是什么)。 -
@Alf:我立即承认你对传递负值和相关问题的可能性是正确的。大多数新手可能会受益于被告知
isspace不能保证在扩展字符上按他们期望的方式工作。