2011-10-13 7 views
2

로이터에서 특정 회사에 대한 정보를 파이썬을 사용하여 추출하고 있습니다.문자열에서 비즈니스 제목과 기간 추출

: 나는 지금 this page

에서 임원/임원 이름, 전기, 보상을 얻을 수 있었다, 나는 이런 식으로 뭔가를 보이는 전기 섹션에서 이전 위치 타이틀과 기업을 추출 할 Donald T. Grimes는 2008 년 5 월부터 Wolverine World Wide, Inc.의 CFO 겸 재무 담당 수석 부사장으로 재직 중입니다. 2007 년부터 2008 년까지 Keystone Automotive Operations, Inc.의 수석 부사장 겸 CFO였습니다. , 자동차 액세서리 및 장비의 유통 업체. Keystone에 입사하기 전에 Mr. Grimes는 고급 와인 및 증류주 제조업체 및 마케팅 담당자 인 Brown-Forman Corporation에서 일련의 수석 기업 및 부서별 재무 담당 직무를 수행했습니다. 브라운 - 포먼 (Brown-Forman)에서 근무하는 동안 그라 임즈 (Grimes)는 2006 년부터 2007 년까지 음료 금융 담당 이사였습니다. 2003 년부터 2006 년까지의 기획 및 분석 담당 부사장 1999 년에 브라운 - 포먼 영 미국의 수석 부사장, 최고 재무 책임자 (CFO) 2003

전에서 몇 년에 얻을 간단한 정규식을 사용할 수 있습니다,하지만 난에 정규식 작성하는 방법에 딱하다 제목과 회사 명을 얻으십시오. 나는 문자열 형식이 일관성이 없다는 것을 알고 있으므로 적어도 70 %의 경우에 대해 작동하는 대답을 취할 것입니다. 내가 정말 불쾌한 않는 한 당신이 사용할 수있는 하나의 정규식이있을 거라고 생각하지 않습니다

2007-2008, executive vice president and chief financial officer, Keystone Automotive operations 

답변

2

당신이 해결하려고하는 문제는 잘 알려져 있고 연구되어 있습니다. "Named Entity Extraction"과 "Relationship Extraction"이라는 용어로 google을 사용한다면 접근법과 알고리즘을 설명하는 많은 양의 연구 논문을 찾을 수 있습니다. 포인트는 다음과 같습니다 :

에이 문서는 내가 발견했습니다 흥미 롭습니다. 이보다 더 많고 아마도 더 좋은 것들이 있습니다. 그러나 이것은 시작해야합니다.

+0

bdk, 사려 깊고 자세한 답장을 보내 주셔서 대단히 감사합니다. 나는 같은 라인을 따라 생각하고 있었다. 형용사를 추출하기 위해 패턴 라이브러리를 사용했습니다. 나는이 목적을 위해서도 갈 것입니다. [http://www.clips.ua.ac.be/pages/pattern] – karlos

1

: 여기에 내가하고 싶은 출력합니다. 나는 이것에 대한 해결책이 Natural Language Processing일지도 모른다라고 생각한다. 확실히이 패키지가 있지만 사용은 간단하지 않을 수 있습니다.

"X is/was Y"와 같은 문장을 취하고 어떤 부분이 이름인지, 어떤 부분이 직책 목록인지, 어떤 부분이 부적절한 지 알아 내려고합니다. 어쩌면 대문자이거나 "and"및 "of"와 같은 작은 단어의 연속을 찾아 볼 수 있습니까?

(?:\u\w+)((?:\u\w*)|(?:of)|(?:and))* #Note the space 

\u

다음 단일 문자합니다 ( \w+ 그룹의 선두 문자)가 대문자 인 것을 의미한다. 그것을 테스트하지 않은,하지만 그것이 작동 해야하는 것 같습니다. 이것은 사소한 문제 일 수 있습니다.

+0

andronikus, 답장을 보내 주셔서 감사합니다.당신 말이 맞아요 : 정규 표현식은 이것에 대한 올바른 해결책이 아니며 bdk가 제안한 것처럼 사소한 문제는 아닙니다. – karlos