- 正则表达式解决。 
 - 注意regex 和 regex_match 
 - 注意常用的正则的语法。\表示转义,\d这个整数需要转义才可以使用。 
 - ()用来匹配一块字段,可以后加?号代表该字段可有可无 
 - []里面的字符有且只能出现一次,可以加*+来控制次数。 
 - ”“来包含这个串  
 
 #include<bits/stdc++.h>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param str string字符串 
     * @return bool布尔型
     */
    bool isNumeric(string str) {
        // write code here
        if(!str.length()) return false;
        string s = trim(str);//删除所有空格
        if(s.length()==0){//输入的是一个空格
            return false;
        }
        return regex_match(s, regex("[+-]?(\\d+|\\d+\\.\\d*|\\.\\d+)([eE][+-]?\\d+)?"));
    }
    //自定义c++ trim函数
    string trim(string str){
        auto pos = str.begin();//从头开始找
        while(1){
            pos = find(pos,str.end(),' ');
            if(pos==str.end()){
                break;
            }
            str.erase(pos);
        }
        return str;
    }
};