sách gpt4 ai đã đi

Cách phân tích cú pháp name=value^^name=value^^name=value

In lại 作者:行者123 更新时间:2023-12-01 17:28:47 27 4
mua khóa gpt4 Nike

Câu hỏi của tôi:非常具体。我正在尝试想出解析以下文本的最简单方法:

^^domain=domain_value^^version=version_value^^account_type=account_type_value^^username=username_value^^password=password_value^^type=type_value^^location=location_value^^id=xxx^^cuid=cuid_value^^

每次都会出现这样的情况。一些要求:

  • 并非所有这些键值对每次都会出现。
  • 它们的顺序可能不同

我正在寻找类似这样的代码:

private String[] getKeyValueInfo(String allStuff) {
String domain = someAwesomeMethod("domain", allStuff);
String version = someAwesomeMethod("version", allStuff);
String account_type = someAwesomeMethod("account_type", allStuff);
String username = someAwesomeMethod("username", allStuff);
String password = someAwesomeMethod("password", allStuff);
String type = someAwesomeMethod("password", allStuff);
String location = someAwesomeMethod("location", allStuff);
String id = someAwesomeMethod("id", allStuff);
String cuid = someAwesomeMethod("cuid", allStuff);
return new String[] {domain, version, account_type, username, password, type, location, id, cuid};
}

我不知道 someAwesomeMethod(String key, String allStuff) 应该包含什么。

我在想什么:是这样的:

private String someAwesomeMethod(String key, String allStuff) {
Pattern patt = Pattern.compile("(?i)^^" + key + "=(.*?)^^", Pattern.DOTALL);
Matcher matcher = patt.matcher(allStuff);
if (matcher.find()) {
return matcher.group(1);
}
trả về giá trị null;
}

这有什么问题:

我担心如果我必须经常这样做的话会有点慢/麻烦。所以我正在寻找任何提示/建议。

1 Câu trả lời

如果你必须做很多事情,我会制作一张 map ,类似于

Map m = new HashMap();
for (String s : stuff.split("\\^\\^")) // caret needs escaping
{
String[] kv = s.split("=");
m.put(kv[0]) = kv[1];
}

然后要查找 key ,您只需执行m.get("key")

关于java - 如何解析名称=值^^名称=值^^名称=值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12983430/

27 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com