我正在使用findstr
和它的/r
标志进行一些字符串验证,以允许正则表达式。特别是我想要验证整数。
正则表达式:
^[0-9][0-9]*$
对于非负数,它运行良好,但是由于我现在也支持负数,所以我尝试
^([1-9][0-9]*|0|-[1-9][0-9]*)$
适用于正数、负数或零。
这个正则表达式在理论上运行良好。我在PowerShell中测试过它,并且它匹配了我想要的内容。然而,由于
findstr /r /c:"^([1-9][0-9]*|0|-[1-9][0-9]*)$"
它不行。
虽然我知道findstr
的正则表达式支持不是最先进的(甚至不如Notepad++),但我本来期望这么简单的表达式是可以工作的。
有什么想法,我在这里做错了什么吗?
findstr
只存在于Windows中... - Joey