如何分割文本并将其保存在数组中

本文关键字:保存 存在 数组 分割文本 | 更新日期: 2023-09-27 17:52:55

我是一个编程新手,在阅读一个巨大的文本文件和分割文本数据时遇到了一些麻烦。

文本文件中的每个条目如下所示:

61.111.15.70 - - [17/Jan/2014:15:14:21 +0200] "GET /dean-martins-almeida-850322ejsapi=1&videoFinishedEvent=onsport-inc-usdot-850322.php HTTP/1.0" 302 533 "-" "http://www.checkprivacy.or.kr:6600/RS/PRIVACY_ENFAQ.jsp"
 Reason: "Detects JavaScript DOM/miscellaneous properties and methods"

我希望读取文本文件,然后按如下方式拆分数据:

client_ip: 61.111.15.70

date_time: [17日/1月/2014:15:14:21 + 0200]

http_request: "GET/dean-martins-almeida-850322ejsapi=1&videoFinishedEvent=onsport-inc-usdot-850322.php HTTP/1.0"

http_response_code: 302

unknown_1: 533

推荐人:"http://www.checkprivacy.or.kr: 6600/RS/PRIVACY_ENFAQ.jsp"

原因: "检测JavaScript DOM/杂项属性和方法"

我完全不知道如何完成这件事。

提前感谢

如何分割文本并将其保存在数组中

我会一步一步地解析它。查找将在您期望的所有字符串中出现的字符或字符串("landmark"),以及它们与您感兴趣的内容的关系。对于IP来说,这很简单:它从开头开始,在第一个"出现的地方结束。

var ip = myText.TakeWhile(c => c!=' ').ToString();

日期在括号内。

var date = myText.SkipWhile(c1 => c1 !='[').TakeWhile(c2 => c2!=']').ToString();

请求以引号开头。因此,您对' ' '进行上述搜索。一直这样下去,直到提取出所有需要的信息。