Я делаю язык в Python для моего класса Computer Science, и мне нужно знать, как читать определенные части строки в файле. Например, если в первой части есть «для», тогда прочитайте whats в «()», затем проверьте «{», а затем перейдите к следующей строке. Я пробовал использовать «if x in line:», но это не гарантирует, что он в правильном порядке. Я также не могу понять, как получить только небольшую часть строки, такую как первые три буквы, или следующие три буквы после первых трех. Я пытаюсь сделать это без необходимости использовать символы как отдельные переменные или как список. Я предпочитаю, чтобы небольшая часть была сохранена как строка, чтобы реализовать эту часть в другом скрипте после того, как она читает строку.Чтение выделенных частей строки из существующего файла
0
A
ответ
1
Регулярные выражения могут проверить синтаксис строки для вас, прежде чем вы ее разделите. Например, с помощью JavaScript/стиле C для цикла:
for(x=1;x<=10;x++){ //Note, some coders drop this { to the next line.
do_something();
}
Питон RE будет что-то вроде:
import re
if re.match("for([\w|\S]+)[{|\S]", line.strip()):
from_first_bracket = line.split("(")[1]
for_loop_conditions = from_first_bracket.split(";")
# last item in for_loop_conditions list has extra punctuation:
for_loop_conditions[2] = for_loop_conditions[2].split(")")[0]
Сейчас в переменной for_loop_conditions хранится: [ 'х = 1',» x < = 10 ',' x ++ '] Линия полосатая, чтобы избавиться от любых простейших пробелов, которые кодер, возможно, поставил перед своей петлей для обозначения вложенности. Я не учитывал пробел между «за» и «(» или «пробел» пробела из окончательного списка, но я учёл запись {на следующей строке и увеличение на x = x + 2.
Смежные вопросы
- 1. Чтение частей текстового файла
- 2. C - Чтение частей файла
- 3. Чтение частей строки (getline())
- 4. Чтение последовательных частей из текстового файла
- 5. Python чтение из отдельных частей текстового файла
- 6. Чтение частей файла в Swift
- 7. C++ - чтение динамически выделенных векторов из двоичного файла
- 8. Чтение XML из существующего не-XML-файла
- 9. Чтение строки из файла
- 10. C++ чтение определенных частей текстового файла
- 11. Чтение определенных частей двоичного файла в Java
- 12. Чтение определенных частей данных из строки с использованием ifstream
- 13. Чтение различных частей двоичного файла в c
- 14. JSZip Чтение Zip-файла и выполнение из существующего файла Zip
- 15. NullPointerException чтение строки из файла
- 16. Чтение 2 строки из файла
- 17. Чтение строки из файла C++
- 18. Чтение строки из файла: Javascript?
- 19. Чтение строки частично из файла
- 20. Чтение и разбор отдельных частей файла
- 21. Чтение из существующего текстового файла (.txt) в SQL Server 2005
- 22. Чтение из текстового файла, но только сохранение определенных частей
- 23. Извлечение или чтение существующего файла SQL - C#
- 24. Tcl получение частей из строки
- 25. Чтение нескольких частей XML
- 26. Чтение определенной строки файла
- 27. Чтение частей DOM PHP
- 28. чтение и запись из файла
- 29. Чтение динамически выделенных массивов в списки
- 30. Чтение строки из файла и сохранение различных ее частей в различных переменных в C++
Вы имеете в виду создание парсера языка? Используйте строку split для создания списка строк отдельных токенов. Это отличается от списка букв. – roadrunner66
Спасибо, я попытаюсь реализовать это сейчас, я посмотрю, что я сможет сделать! – Piguinrulist