gpt4 book ai didi

c++ - 如何在 string::find 中使用通配符?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:23:05 24 4
gpt4 key购买 nike

我希望能够在 string::find 中使用通配符,然后获取该通配符位置的内容。

例如:

if (string::npos !=input.find("How is * doing?")
{
cout<<"(the wildcard) is doing fine."<<endl;
}

因此,如果我问“妈妈过得怎么样?”,输出将是“妈妈过得很好。”

为此我会使用哪些库,或者我将如何手动编写代码?如果我应该使用 AIML,AIML 可以执行 .bat 文件吗?

最佳答案

关于您关于如何手动完成的问题,我将通过这个简单的代码给您一个想法,它解决了您在问题中给出的示例。

#include<iostream>
#include<string>
using namespace std;
int main()
{
string expr="How is * doing?";
string input="How is Mom doing?";
int wildcard_pos=expr.find("*");
if(wildcard_pos!=string::npos)
{
int foo=input.find(expr.substr(0,wildcard_pos)),bar=input.find(expr.substr(wildcard_pos+1));
if(foo!=string::npos && bar!=string::npos)
cout<<input.substr(wildcard_pos,bar-wildcard_pos)<<" is doing fine\n";
}
}

您可以轻松修改此想法以满足您的需要。否则,按照 src

给出的答案

关于c++ - 如何在 string::find 中使用通配符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11276000/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com