c++ - 正确使用 regex_match

标签 c++ regex

我正在尝试检查 yyyy-mm-dd 格式的日期字符串的格式。我像这样调用 regex_match 函数:

if (regex_match(date, regex("/\d{4}-\d{2}-\d{2}/")))

传入的字符串恰好是“1997-03-26”,当我使用正则表达式测试器时,它会选择正则表达式。

我认为这与 regex_match 和我调用它的方式有关,但我不知道它还需要什么。

最佳答案

你应该这样写:

"\\d{4}-\\d{2}-\\d{2}"

您需要双 \\ 来转义反斜杠。请记住,您必须在 C++ 中对其进行转义,然后使用正则表达式。

此外,不需要/

希望这对您有所帮助!

关于c++ - 正确使用 regex_match,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35210504/

相关文章:

regex - Scala:标记简单算术表达式

python - 在 Python (2.7) 中拆分字符串

c++ - GLSL 中曲面 segmentation 着色器的链接错误

c++ - 打印空心直角三角形

c++ - 如何使用Mongoose(一个http服务器)来服务不同的请求?

c++ - join() 是否释放了分配的内存? - C++11 线程

c# - .NET 如何通过套接字获取 int C-Sharp

ASP.NET RegularExpressionValidator,验证不匹配项?

Python:重新模块初学者

java - 如何在Java中为正则表达式转义文本