funcs.cpp 602 B

12345678910111213141516171819202122
  1. #include "funcs.h"
  2. QString funcs::getValue(const QString &string, const QString &key)
  3. {
  4. if (key.isEmpty())
  5. return QString();
  6. const QString keyPattern = key + "=";
  7. size_t valueStart = string.indexOf(keyPattern);
  8. if (valueStart == std::string::npos) {
  9. return QString();
  10. }
  11. valueStart += keyPattern.length();
  12. size_t valueEnd = string.indexOf(' ', valueStart);
  13. if (valueEnd == std::string::npos) {
  14. valueEnd = string.size();
  15. }
  16. std::string result = string.toStdString().substr(valueStart, valueEnd - valueStart);
  17. return result.c_str();
  18. }