의 내가 그때이키워드 문자열 내부에 존재하는 경우 알고리즘은 볼 수
{ "최고의 스포츠 테니스" "올림픽", "테니스", "테니스 규칙"} 배열에서 일련의 키워드를 가지고 있다고 가정 해 봅시다 큰 목록 (한 번에 최대 50 개)의 문자열 (또는 실제로는 트윗)이므로 최대 140 자입니다.
각 문자열을보고 거기에 어떤 키워드가 있는지보고 싶습니다. 키워드가 "sports tennis best"와 같은 여러 단어로 구성된 경우 단어가 문자열에 함께있을 필요는 없지만 모두 표시해야합니다.
효율적으로 처리하는 알고리즘을 찾는 데 문제가 있습니다.
의견이 있으십니까? 감사!
편집 : {1 : "올림픽", 2 : "스포츠 테니스", 3 : "테니스", "4 : 테니스 규칙"}과 같이 각 키워드의 ID가 더 잘 설명됩니다.
문자열/트윗 목록을 확인하고 어떤 키워드 그룹과 일치하는지 확인하고 싶습니다. 결과물은 키워드 # 4에 속해야합니다. (여러 경기가있을 수 있으므로 키워드 2와 일치하는 항목은 모두 테니스가 포함되어 있으므로 3과 일치합니다.)
키워드에 단어가 여러 개인 경우 (예 : "스포츠 테니스"는 함께 나타나지 않아도되지만 모두 나타나야합니다. 예 : 이것은 정확하게 일치합니다 : "나는 방금 테니스를 치고, 나는 스포츠를 사랑합니다."...이 문자열에는 "sports tennis best"가 포함되어 있으므로 keywordID (이 예에서는 2)와 연결되어 관련이 있습니다.
편집 2 : 대소 문자를 구분하지 않습니다.
원하는 출력은 무엇입니까? 키워드가 포함 된 문자열 목록? 또는 각 키워드가 문자열에 몇 번이나 있는지 계산합니까? 또는 다른 것? –
하위 문자열 또는 전체 단어가 일치합니까? 대소 문자를 구분합니까? – RedFilter
위의 몇 가지 설명을 추가했습니다. 전체 단어 일치 ...하지만 공백으로 구분 된 키워드는 논리적 AND와 같습니다. 그래서 "스포츠 테니스 최고"는 "스포츠"AND "테니스"AND "최고"라는 키워드와 일치해야합니다. – rksprst