c++ - 应用程序参数的正则表达式

标签 c++ regex linux flex-lexer

所以,标题是怎么说的。如何使用正则表达式提取应用程序参数?
我试过:--.*,但我希望它不匹配,除非它后面有任何字符(空格除外)。所以,这个:--version hello 会匹配 --version,但是 --hello 不会匹配任何东西。 (注意--hello之间有一个空格)

我不想使用任何其他库。 (事实上​​我不能,因为我正在使用 Flex 词法分析器)

有什么想法吗?
马修

最佳答案

糟糕

好吧,我来这里问的有点太快了。无论如何,对于遇到同样问题的任何人,解决方案是:

--\S+

--[^[:space:]]+

--不会匹配,--a会匹配,而在输入--a b c中,只有- -a 将匹配。为正在寻找解决方案的任何人干杯。

关于c++ - 应用程序参数的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43834687/

相关文章:

c++ - 将整数输入数组的方法比 scanf() 或 cin 更快?

c++ - GetDlgItemInt 和 SetDlgItemInt 的问题

javascript - 为什么带有全局标志的正则表达式会给出错误的结果?

linux - 子窗口关闭时如何终止父进程

Linux 内核设备驱动程序从设备到用户空间内存的 DMA

linux - 如何知道 Linux 中终端的确切名称?

c++ - VK_CONTROL/VK_MENU/VK_SHIFT 的默认值

c++ - 模板化类构造函数中的 static_assert

javascript - 如何从功能标签的页面源代码中获取值?

java - 为什么我在 Java 中使用正则表达式得到非法转义字符?