00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #include "string_utils.hxx"
00021 
00022 namespace StringUtils
00023 {
00024   bool has_prefix (const std::string& str, const std::string& prefix)
00025   {
00026     if (prefix.length() > str.length())
00027       {
00028         return false;
00029       }
00030     else
00031       {
00032         for (std::string::size_type i = 0; i < prefix.length(); ++i)
00033           {
00034             if (prefix[i] != str[i])
00035               return false;
00036           }
00037         return true;
00038       }
00039   }
00040 
00041   bool has_suffix (const std::string& str, const std::string& suffix)
00042   {
00043     if (suffix.length() > str.length())
00044       {
00045         return false;
00046       }
00047     else
00048       {
00049         for (std::string::size_type i = 0; i < suffix.length(); ++i)
00050           {
00051             if (suffix[i] != str[str.length() -  suffix.length() + i])
00052               return false;
00053           }
00054         return true;
00055       }
00056   }
00057 }
00058 
00059