我正在尝试对命令行的输出进行排序,需要截取一个长度和名称可能不同的名称。我试图分割的输出是
AP Name.......................................... AP-Test
AP Test的名称可以是任意长度或名称。我试着用“,”来分割它,但那会产生一堆子字符串。我当前将输出存储到一个名为结果.txt,通过查找带有AP Name的行进行排序,但我需要找到存储在列表中的字符串的结尾。你知道吗
APnames = [] # AP name lists
APlinenum = 0 # AP line number index
APsubstr = "AP Name.".lower() # searching for "AP Name".
fileA = open("Results.txt", 'a+')
for line in fileA:
APlinenum += 1
if line.lower().find(APsubstr) != -1: # if case-insensitive match,
APnames.append(line.rstrip('\n'))
fileA.close()
APname = "the actual AP-name"
存在这样一个问题:如果AP名称包含句点,它将被拆分。你知道吗
预期的输出将是字符串APname是确切的名称,没有其他字符。你知道吗
可以使用正则表达式按“至少一个点”拆分:
这里
\.
表示文字.
(而不是“任何字符”,这是.
在regex中通常的意思),而+
表示“一行中的任意次数,但至少一次”。你知道吗用法示例:
如果字符串本身可以包含点,那么您可以通过将regex更改为
\.{3,}
这样至少需要3个点来进行拆分,从而需要多个点。你知道吗看看这个:https://stackoverflow.com/a/15012237
为什么不数一数点,然后按结果分开呢?你知道吗
相关问题 更多 >
编程相关推荐