#include <iostream>
#include <cstring>
#include <string>
#include <algorithm>
using namespace std;
int main() {
constexpr auto doMatch = ".txt";
constexpr auto doMatchSize = strlen(doMatch);
constexpr auto doNotMatch = "_test";
constexpr auto doNotMatchSize = strlen(doNotMatch) + doMatchSize;
string input("somepath/testFile_test.txt");
if(input.size() >= doMatchSize &&
equal(input.end() - doMatchSize, input.end(), doMatch) &&
(input.size() < doNotMatchSize ||
!equal(input.end() - doNotMatchSize, input.end() - doMatchSize, doNotMatch))){
cout << "pass" << endl;
}else{
cout << "fail" << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgewoJY29uc3RleHByIGF1dG8gZG9NYXRjaCA9ICIudHh0IjsKCWNvbnN0ZXhwciBhdXRvIGRvTWF0Y2hTaXplID0gc3RybGVuKGRvTWF0Y2gpOwoJY29uc3RleHByIGF1dG8gZG9Ob3RNYXRjaCA9ICJfdGVzdCI7Cgljb25zdGV4cHIgYXV0byBkb05vdE1hdGNoU2l6ZSA9IHN0cmxlbihkb05vdE1hdGNoKSArIGRvTWF0Y2hTaXplOwoJc3RyaW5nIGlucHV0KCJzb21lcGF0aC90ZXN0RmlsZV90ZXN0LnR4dCIpOwoJCglpZihpbnB1dC5zaXplKCkgPj0gZG9NYXRjaFNpemUgJiYKCSAgIGVxdWFsKGlucHV0LmVuZCgpIC0gZG9NYXRjaFNpemUsIGlucHV0LmVuZCgpLCBkb01hdGNoKSAmJgoJICAgKGlucHV0LnNpemUoKSA8IGRvTm90TWF0Y2hTaXplIHx8CgkgICAhZXF1YWwoaW5wdXQuZW5kKCkgLSBkb05vdE1hdGNoU2l6ZSwgaW5wdXQuZW5kKCkgLSBkb01hdGNoU2l6ZSwgZG9Ob3RNYXRjaCkpKXsKCQljb3V0IDw8ICJwYXNzIiA8PCBlbmRsOwogICB9ZWxzZXsKICAgCQljb3V0IDw8ICJmYWlsIiA8PCBlbmRsOwogICB9CgkKCXJldHVybiAwOwp9