Я использую findall для разделения текста.Регулярное выражение Python для r.findall
Я начал с этого выражения re.findall (r '(. ?) (\ $.? \ $)', Но он не дал мне данные после того, как найден последний фрагмент текста. «6 \ п \ п»
Как получить последний кусок текста
Вот мой питон код:
#!/usr/bin/env python
import re
allData = '''
1
2
3 here Some text in here
$file1.txt$
4 Some text in here and more $file2.txt$
5 Some text $file3.txt$ here
$file3.txt$
6
'''
for record in re.findall(r'(.*?)(\$.*?\$)|(.*?$)',allData,flags=re.DOTALL) :
print repr(record)
выход я получаю за это:
('\n1\n2\n3 here Some text in here \n', '$file1.txt$', '')
('\n4 Some text in here and more ', '$file2.txt$', '')
('\n5 Some text ', '$file3.txt$', '')
(' here \n', '$file3.txt$', '')
('', '', '\n6\n')
('', '', '')
('', '', '')
Я действительно хотел бы этот выход:
('\n1\n2\n3 here Some text in here \n', '$file1.txt$')
('\n4 Some text in here and more ', '$file2.txt$')
('\n5 Some text ', '$file3.txt$')
(' here \n', '$file3.txt$')
('\n6\n', '',)
Справочная информация в случае, если вам нужно, чтобы увидеть более широкую картину.
В случае, если вы заинтересованы, я переписываю это в python. Я контролирую остальную часть кода. Я просто получаю слишком много лишних вещей.
https://discussions.apple.com/message/21202021#21202021
Что вы заменяете '$ file3.txt $' на? – Blender
howabout просто используйте 'allData.strip()' –
данные из файла. ie file3.txt – historystamp