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

时间:2013-01-03 04:26:05

标签: c regex

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

对于空字符串"^$"工作正常。

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

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

有没有更好的方法来使用perl样式正则表达式表达它?

更新: 我实际上改变了它"[\\s]*(?![\\w\\d\\t\\n\\r]*)$"

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

"Invalid preceding regular expression"

2 个答案:

答案 0 :(得分:2)

要仅为空格测试字符串,其Reg-Ex将为......

^\s*$

参考:有用

How to test to see if a string is only whitespace in perl

答案 1 :(得分:1)

您应该使用*+量词..

因此应该是^\s*$^ *$

*匹配0到多个字符

+匹配1到多个字符