2026-03-12 23:24:10 +08:00
|
|
|
#include <boost/algorithm/string.hpp>
|
2026-03-12 22:15:50 +08:00
|
|
|
#include <iostream>
|
2026-03-12 23:24:10 +08:00
|
|
|
#include <list>
|
|
|
|
|
#include <unordered_map>
|
|
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
#include <windows.h>
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
struct OneItem {
|
|
|
|
|
std::string from;
|
|
|
|
|
std::string middle;
|
|
|
|
|
std::string to;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
void testFun()
|
|
|
|
|
{
|
|
|
|
|
std::vector<OneItem> testConfig;
|
|
|
|
|
testConfig.push_back({"Rcp15", "RcpBX5", "Rcp5"});
|
|
|
|
|
testConfig.push_back({"Rcp7", "RcpBX4", "Rcp4"});
|
|
|
|
|
testConfig.push_back({"Rcp3", "RcpBX3", "Rcp3"});
|
|
|
|
|
testConfig.push_back({"Rcp1", "RcpBX2", "Rcp2"});
|
|
|
|
|
testConfig.push_back({"Rcp0", "RcpBX1", "Rcp1"});
|
|
|
|
|
|
|
|
|
|
std::string testData =
|
|
|
|
|
R"(
|
|
|
|
|
这是一个测试文件,Rcp15,Rcp7,Rcp3,Rcp1,Rcp0。
|
|
|
|
|
Rcp15,Rcp7,Rcp3,Rcp1,Rcp0。
|
|
|
|
|
)";
|
|
|
|
|
|
|
|
|
|
std::cout << testData << std::endl;
|
|
|
|
|
std::cout << "" << std::endl;
|
|
|
|
|
|
|
|
|
|
for (const auto& item : testConfig) {
|
|
|
|
|
boost::replace_all(testData, item.from, item.middle);
|
|
|
|
|
}
|
|
|
|
|
for (const auto& item : testConfig) {
|
|
|
|
|
boost::replace_all(testData, item.middle, item.to);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::cout << testData << std::endl;
|
|
|
|
|
std::cout << "" << std::endl;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
|
SetConsoleOutputCP(CP_UTF8);
|
|
|
|
|
#endif
|
|
|
|
|
testFun();
|
2026-03-12 22:15:50 +08:00
|
|
|
|
|
|
|
|
std::cout << "Hello World!" << std::endl;
|
|
|
|
|
return 0;
|
|
|
|
|
}
|