【问题标题】:How to extract text and set as variable Batch Code CMD如何提取文本并设置为变量 Batch Code CMD
【发布时间】:2023-03-20 09:29:01
【问题描述】:

我想根据这个文本文件提取哪些用户在线:
https://minecraft-statistic.net/en/server/167.114.43.185_25565/json/

我会将其保存为文本文件。里面有东西:

"players_list":["Raskhol"]["Lukaka"],"map":...etc

我想提取"_list":,"map" 之间的所有文本并将其设置为变量。这样当我调用变量%Playerlist% 时,它会说:

["Raskhol"]["Lukaka"]

【问题讨论】:

    标签: batch-file cmd find


    【解决方案1】:

    类似于@geisterfurz007 的回答,这个假设您在“players_list”的第一个实例之后:在“map”的第一个实例之前

    @Echo Off
    Set/P var=<some.json
    Set var=%var:,"map"=&:%
    Set var=%var:*"players_list":=%
    Echo=%var%
    Timeout -1
    

    【讨论】:

    • 效果很好!我将对此进行测试,看看我是否也可以自定义它。不要放弃这个,我可能会带着另一个问题回来。感谢 Compo 和 geister..ETC
    【解决方案2】:

    由于正在打电话,未测试。

    @echo off
    For /f "delims=: tokens=2" %%g in (PathTo\file.txt) do (
    Set var=%%g
    Goto:next
    )
    :next
    Set var=%var:,map=%
    echo %var%
    

    假设玩家是第一个被列出的。

    读取文件,从第一个: 到第二个,将其存储在var
    然后,map 被替换为什么都没有,最终导致玩家蜂鸣echoed。

    如果有不清楚的地方,请随时提出问题!不过可能需要一段时间,因为我目前正在移动。

    【讨论】:

    • 返回:'101664, "ip"'
    • 那是因为我拆分字符串的方式。您可以调整tokens 之后的数字以适应该事物。 Compos 的答案要优雅得多,而且不会失败。
    猜你喜欢
    • 2012-07-24
    • 2012-05-04
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 1970-01-01
    • 2020-05-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多