带空格的c样式字符串的regcomp表达式

带空格的c样式字符串的regcomp表达式,c,regex,C,Regex,我正在尝试检测空字符串或仅包含空格(如“”)的字符串。 它是一个c应用程序,使用regcomp和regexec 对于空字符串,“^$”可以正常工作 但是对于只有空格的字符串,我遇到了一个问题。到目前为止,我已经想出了 “[\\s]*(?![A-za-z0-9])$” 有没有更好的方法用perl风格的正则表达式来表达它 更新: 实际上,我把它改成了“[\\s]*(?![\\w\\d\\t\\n\\r]*)$” 当我输入如“m”时,上面给出了一个错误。错误是 “无效的前置正则表达式”您应该使用*或+

我正在尝试检测空字符串或仅包含空格(如“”)的字符串。 它是一个c应用程序,使用
regcomp
regexec

对于空字符串,
“^$”
可以正常工作

但是对于只有空格的字符串,我遇到了一个问题。到目前为止,我已经想出了

“[\\s]*(?![A-za-z0-9])$”

有没有更好的方法用perl风格的正则表达式来表达它

更新: 实际上,我把它改成了“[\\s]*(?![\\w\\d\\t\\n\\r]*)$”

当我输入如“m”时,上面给出了一个错误。错误是


“无效的前置正则表达式”

您应该使用
*
+
量词

所以它应该是
^\s*$
^*$

*
将0与多个字符匹配


+
匹配1到多个字符

要测试字符串是否只包含空格,其Reg Ex将为

^\s*$

参考:有帮助


您可以使用isspace()对其进行迭代。多行字符串如何?你想把它们考虑进去吗?