Index: trunk/FACT++/src/tools.cc
===================================================================
--- trunk/FACT++/src/tools.cc	(revision 13220)
+++ trunk/FACT++/src/tools.cc	(revision 13221)
@@ -76,4 +76,30 @@
 // --------------------------------------------------------------------------
 //
+//! This is a static helper to remove leading and trailing whitespaces and
+//! if available leading and trailing quotes, can be either ' or "
+//!
+//! @param buf
+//!    a pointer to the char array to be trimmed
+//!
+//! @returns
+//!    a std::string with the content trimmed
+//
+string Tools::TrimQuotes(const string &str)
+{
+    string rc = Trim(str);
+    if (rc.length()<2)
+        return rc;
+
+    const char b = rc[0];
+    const char e = rc[rc.length()-1];
+
+    if ((b=='\"' && e=='\"') || (b=='\'' && e=='\''))
+        return rc.substr(1, rc.length()-2);
+
+    return rc;
+}
+
+// --------------------------------------------------------------------------
+//
 //! This is a static helper to remove leading and trailing whitespaces.
 //!
Index: trunk/FACT++/src/tools.h
===================================================================
--- trunk/FACT++/src/tools.h	(revision 13220)
+++ trunk/FACT++/src/tools.h	(revision 13221)
@@ -9,4 +9,5 @@
     std::string Form(const char *fmt, ...);
     std::string Trim(const std::string &str);
+    std::string TrimQuotes(const std::string &str);
     std::string Wrap(std::string &str, size_t width=78);
 }
