赞
踩
- /*1 正则表达式 搜索6位数 */
- std::string aa = "072007P44";
- std::string bb = "072007 P44";
- std::regex pattern("([0-9]{6})");
- std::smatch matches;
-
- if (std::regex_search(aa, matches, pattern)) {
- std::string result = matches[1].str();
-
-
- std::cout << aa << std::endl;
- std::cout << result << std::endl;/* 072007 */
- }
- else {
- std::cout << "No match found." << std::endl;
- }
-
-
- if (std::regex_search(bb, matches, pattern)) {
- std::string result = matches[1].str();
-
-
- std::cout << bb << std::endl;
- std::cout << result << std::endl;/* 072007 */
- }
- else {
- std::cout << "No match found." << std::endl;
- }
-
-
-
- // 2
- std::string aa = "CTD220162_1_KSZJ_008-REV01";
- std::regex pattern("[_-]([A-Z]+[_-][0-9]+)[_-]");
- std::smatch matches;
-
- if (std::regex_search(aa, matches, pattern)) {
- std::string result = matches[1].str();
- std::cout << result << std::endl; // KSZJ_008
- }
- else {
- std::cout << "No match found." << std::endl;
- }
-
- // 3 找6位字符串
- vector<string> GetRegexString(const string& cstr) {
- smatch matches;
- vector<string> cstrs;
- regex x("^.*([_-](([1-9]|[a-z]|[A-Z]){6})[_-]).*$"); // tak2500446_123456_tra
- if (regex_search(cstr, matches, x))
- cstrs.push_back(matches[1]), // _123456_
- cstrs.push_back(matches[2]);//123456
- return cstrs;
- }
-
-
- // 4 找7位字符串
- vector<string> GetRegexString_a(const string& cstr) {
- smatch matches;
- vector<string> cstrs;
- regex x("^.*([_-](([1-9]|[a-z]|[A-Z]){7})[_-]).*$");// tak2500446_123456A_tra
- if (regex_search(cstr, matches, x))
- cstrs.push_back(matches[1]),// _123456A_
- cstrs.push_back(matches[2]);//123456
- return cstrs;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。