내가 텍스트 파일에서 줄을 추출에 큰 문제가 :추출물 특정 라인
BO_ 560 VR_Sgn_1: ALMN
SG_1_ Vr
SG_2_ Vr_set
SG_3 Dars
BO _ 561 VSet_Current : ACM
SG_2_ Vr_set
SG_3 Dars
BO_ 4321 CDSet_tr : APL
SG_1_ Vr
SG_2_ Vr_set
SG_3 Dars
SG_1_ Vr_1
SG_2_ Vr_set
SG_3 Dars
....
: 내 텍스트 파일 IST는 다음과 같이 구축텍스트 파일에 약 1000 개의 이러한 "BO_"블록이 포함되어 있습니다 ...
"BO_"사이에 표현식을 사용하고 싶습니다. 여기 내 이전 코드 :
는 SG_1_ Vr
SG_2_ Vr_set
SG_3 Dars
이 사람이 나를 도와 드릴까요 : 나는 다음과 같은 출력을 기대하고 싶습니다이 경우
show_line= False
with open("test.txt") as f:
for line in f:
if line.startswith("BO_ 560"):
show_line=True
elif line.startswith("\n")
show_line= False
if show_line and not line.startswith("BO_ 560")
print line
?
잘 모르겠다. BO로 시작하지 않는 모든 라인을 원한다. 또는을 제공하고 다음 BO_까지 BO_ 다음의 모든 행을 가져 오시겠습니까? 또한 지금받는 출력은 무엇입니까? –
코드가 작동합니까? 그것이 효과가 없다면 무엇이 잘못 될까요? – khelwood
"BO_ #NUMBER"로 시작하는 프레임이 있습니다. 내가 알고리즘을 문자열 "BO_ 560"을 전달 위의 이전의 예에서 다음과 같은 출력 예상 : 'SG_1_ VR SG_2_ Vr_set SG_3 Dars' 내 알고리즘은 항상 곁에 나에게주는이 : 'SG_1_ VR SG_2_ Vr_set 을 SG_3 DARS BO _ 561 VSet_Current : ACM SG_2_ Vr_set SG_3 DARS BO_ 4321 CDSet_tr : APL SG_1_ VR SG_2_ Vr_set SG_3 DARS SG_1_ VR_1 SG_2_ Vr_set SG_3 Dars' ....하지만 너무 많이합니다. 나는 단지 "BO_" –