stl 下字符串匹配与string 相关函数的调用
这周主要做了stl环境下url字符串操作, 用到string 类的很多函数。完成了对url的识别和对银行网址的认定,以防止钓鱼网站的url被误认。。。
stl下主要是对容器的使用,vector list ;
当然做为C++ 的标准,流和输入与输出是少不了的,也包括文件;
最基本的是字符串的操作了,string提供了很多的函数,可以调用。
vector:
【例】
vector<string> abcd;
abcd.push_back("dfkddghdrherherf");//插入
abcd.push_back("ldfsdlfjsl");
abcd.push_back("sldfei");
vector<string>::iterator it_ab = abcd.begin();//索引
cout<< it_ab->size() << "-" << abcd.size()<<endl;//第一个输出的是第一个元素的长度,第二个输出的是容器内元素的个数。
for(;it_ab != abcd.end(); it_ab++)
{cout << *it_ab;}
string:
【例 1】
string a = "abcdddd", b= "cdd", c = "abcd", d = "abcdddd";
cout<< a.compare(b) <<"-"<<a.compare(c) <<"-"<<a.compare(d)<<endl;//比较
【例 2】
string line = "www.abc.com";//字符串查找
if(line.length() == 0) return;
size_t startpos = line.find("www."); //find_first_of("www."); find是全串匹配、find_first_of只匹配串中第一个字符
if(string::npos == startpos)
{
startpos = line.find_first_of("://");
if(string::npos == startpos)
{}
}
else
{
cout << startpos << line.substr(startpos+4) << endl;//字串
}