일부 단어가 하나의 단어이거나 여러 단어가 여러 단어이거나 일부 단어에 하이픈이 있거나 다른 단어에 괄호와 하이픈이있을 수 있습니다. 텍스트 파일의 디렉토리를 처리하고이 구문 중 100 개 이상을 검색 한 다음 발생 횟수를 계산하려고합니다.텍스트 파일에 특수 문자가있는 특정 구문을 검색하고 계산하십시오.
다음 코드는 하이픈으로 연결된 검색 문구가 나타날 때까지 2.7x Python에서 작동하는 것처럼 보입니다. 하이픈 처리 된 검색 구문 중 적어도 하나에 대해 일부 텍스트 파일에서 예기치 않은 계산을 보았습니다.
kwlist = ['phraseone', 'phrase two', 'phrase-three', 'phrase four (a-b-c) abc', 'phrase five abc', 'phrase-six abc abc']
for kws in kwlist:
s_str = kws
kw = re.findall(r"\b" + s_str +r"\b", ltxt)
count = 0
for c in kw:
if c == s_str:
count += 1
output.write(str(count))
검색에서 구문의 범위를 처리하는 더 좋은 방법이나 내가 알고리즘에 대해 개선 할 수있는 점이 있습니까?
정확하게 작동하지 않는 것을 알려주십시오. 오류 메시지가 나타 납니까? 그 예기치 않은 결과를 게시물에 추가하십시오. – voiDnyx
오류 메시지가 없습니다. 지금까지 문제는 텍스트 파일에서 'phrase-six abc abc'와 같은 것이 나오면 검색중인 텍스트 파일 하나 이상에 대해 계산이 너무 많아졌습니다. 아직도 다른 사람들을 확인 중입니다. –
어쩌면 틀린 것으로 생각되는 문구와 실제 문구가 포함 된 텍스트 구절을 제공 할 수도 있습니다. 이것은 당신의 regex 사용에 대한 문제와 더 비슷합니다. – voiDnyx