我可以将“cin”重定向到正则表达式的功能吗?

时间:2016-11-25 11:19:20

标签: c++ regex cin

我在问this问题时已经开了几天了,我仍然无法解决我的问题。

如果我需要从键盘读取两个字符串,我可以这样做:

cin >> str1 >> str2;

但是我想过滤输入。

我正在尝试做的事情是这样的:

cin >> filter1 >> str1 >> filter2 >> str2;

或者

cin >> filter1 >> filter2 >> str1 >> str2;

其中 filter1 filter2 是具有正则表达式的函数,用于过滤输入。

我最大的麻烦是我看不到如何在输入和字符串之间插入函数。 。

任何帮助表示赞赏

1 个答案:

答案 0 :(得分:0)

您的过滤器函数应该返回使用正则表达式实现过滤的类的对象。然后你会重载运算符>>接受该对象,它将读取数据并调用它。窥探istream标题,了解如何做到这一点。必须销毁对象,或者它可能是某种单身的