首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在空白行后修剪文件

在空白行后修剪文件
EN

Stack Overflow用户
提问于 2012-01-05 07:55:21
回答 2查看 628关注 0票数 0

我有一个包含多个空行的文本文件,我尝试返回其中两行之间的所有行

因此,如果我有一个如下所示的文件:

代码语言:javascript
运行
复制
 ____________________________
 1########################
 2##########################
 3
 4########################
 5##########################
 6#######################
 7
 8#########################
 9##########################
 10#######################
 11####################
 12########################
 13#########################
 14
 15##########################
 ----------------------------

我想坐8-13号线。不幸的是,它可能不会总是8-13,因为它可能是9-20或7-8,但它将总是在第二和第三线休息之间。

我知道如何裁剪字符和提取单行,但我不知道如何裁剪整个部分。

任何帮助都将不胜感激,即使你只是给我介绍了一个教程。

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-10 23:58:14

我最终做的是修剪最后一部分,并在第一部分中搜索我需要的内容(我知道我没有在问题中包括搜索部分,但我只是想找出一种方法来缩小搜索结果的范围,因为它会有重复的结果)。我张贴这篇文章,以防其他人偶然发现这篇文章,寻找一些答案。

代码语言:javascript
运行
复制
Dim applist() = System.IO.File.ReadAllLines("C:\applist.txt")
Dim findICSName As String = "pid"
Dim ICSName As New Regex("\:.*?\(")
Dim x = 0
    Do Until applist(x).Contains("Total PSS by OOM adjustment:")
        If applist(x).Contains(findICSName) Then
            app = ICSName.Match(applist(x)).Value
            app = app.TrimStart(CChar(": "))
            app = app.TrimEnd(CChar("("))
            ListBox1.Items.Add(app)
        End If
        x = x + 1
    Loop
End If

它的工作原理是遍历正则表达式的每一行,直到到达断点"Total PSS by OOM adjustment:“中的第一个单词。

票数 0
EN

Stack Overflow用户

发布于 2012-01-05 08:13:49

这里的基本思想是将整个内容作为字符串,在两个换行符处将其拆分成组,然后引用所需的组(在本例中是第三个)。

代码语言:javascript
运行
复制
Dim value As String = File.ReadAllText("C:\test.txt")

Dim breakString As String = Environment.NewLine & Environment.NewLine

Dim groups As String() = value.Split({breakString}, StringSplitOptions.None)

Dim desiredString As String = groups(2)

MsgBox(desiredString)

编辑:在回答您的评论中的问题-

Environment.NewLine是一种更动态的指定换行符的方式。假设你在windows上运行,你也可以使用VbCrLf。这个想法是,如果你要在Linux上编译同样的代码,它会Environment.NewLine生成一个Lf。你可以在这里看到更多信息:http://en.wikipedia.org/wiki/Newline

我使用Environment.NewLine & Environment.NewLine的原因是因为您希望在有两个换行符的地方中断信息(一个在段落最后一行的末尾,另一个用于下一段之前的空行)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8735826

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档