使用 pyparsing 将文本拆分成行
Splitting text into lines with pyparsing
我正在编写我的第一个使用 pyparsing 的程序。
我想解析一个文件,其中以“\n”结尾的每一行都是一个标记。
请说明如何操作。
事实上,我需要解析.lyx 文件。 .lyx 文件的一个示例:https://github.com/nicowilliams/lyx/blob/master/lib/examples/Braille.lyx
看来解决任务如下:
import sys
import pyparsing # parsley
all_files = sys.argv[1:]
if not all_files:
print "Usage: DuplicateRefs.py FILE.lyx ...\n"
sys.exit(1)
def mylambda(tok):
print tok
parser = pyparsing.ZeroOrMore(pyparsing.CharsNotIn("\n").setParseAction(mylambda) + pyparsing.White("\n"))
for file in all_files:
parser.parseFile(file)
我正在编写我的第一个使用 pyparsing 的程序。
我想解析一个文件,其中以“\n”结尾的每一行都是一个标记。
请说明如何操作。
事实上,我需要解析.lyx 文件。 .lyx 文件的一个示例:https://github.com/nicowilliams/lyx/blob/master/lib/examples/Braille.lyx
看来解决任务如下:
import sys import pyparsing # parsley all_files = sys.argv[1:] if not all_files: print "Usage: DuplicateRefs.py FILE.lyx ...\n" sys.exit(1) def mylambda(tok): print tok parser = pyparsing.ZeroOrMore(pyparsing.CharsNotIn("\n").setParseAction(mylambda) + pyparsing.White("\n")) for file in all_files: parser.parseFile(file)