이것은 내 검색 결과 프로젝트의 일부로, 여러 표에서 설명이 반환되었습니다. 그 부분은 모두 100 % 작동합니다.키워드를 포함하여 총 x 단어 수를 얻으려면 coldfusion을 사용하십시오.
저는 현재 문자열을 전달하는 trim_text 함수와 몇개의 단어를 유지하려고합니다.
그러나 이제 키워드/검색어가 검색 결과의 유효성을 표시하는 데 도움이되도록 설명에 포함되도록 수정해야합니다.
아래는 기존의 trim_text 함수입니다. 수정하는데 도움이 필요합니다.
<cffunction name="trim_text" output="false" access="remote" returntype="string">
<cfargument name="string" type="string" required="true">
<cfargument name="word_limit" type="integer" required="false">
<cfparam name="word_limit" default=20>
<cfparam name="snippet" default="">
<cfparam name="return_string" default="">
<cfset return_string = "">
<cfset return_string = reReplace(string, "</?\w+(\s*[\w:]+\s*=\s*(""[^""]*""|'[^']*'))*\s*/?>", " ", "all") />
<cfset return_string = reReplace(trim(return_string), "\s+", " ", "all") />
<cfset snippet = reMatch("([^\s]+\s?){1,#word_limit#}", return_string) />
<cfif !arrayLen(snippet)>
<cfreturn "" />
</cfif>
<cfset charCount = listlen(snippet[1]) />
<cfset wordCount = ((word_limit * (arrayLen(snippet) - 1)) + listLen(snippet[ arrayLen(snippet) ], " ")) />
<cfif charCount gt 190>
<cfreturn left(snippet[1],190) & "..." />
</cfif>
<cfset return_string = snippet[1] & "..." />
<cfreturn return_string />
</cffunction>
그래서 최종 목표는 키워드가 포함 된 설명입니다.
예를 들면. 우리가 25에 대한 설명을 제한하고 있기 때문에
것은 우리가 내가 키워드 '비즈니스'
검색하고 내가 정확한 검색 결과를 얻을 수 있다고 가정 해 봅시다, 그러나 설명은 그림과 설명에 그 단어가 없습니다 단어, trim_text 함수를 통해. 그것은 모든 설명을 비슷한 크기로 만듭니다. 그러나 설명에서 키워드가 더 아래에있는 결과의 유효성을 입증하는 데는 도움이되지 않습니다.
질문 있으십니까? 나는 이것을 아주 분명히하기를 희망한다.
저는 Coldfusion 8 Standard를 사용하고 있습니다. 내 개발 서버에서 이것을 테스트하고 있습니다.
는 문자열에서 키워드의 위치를 찾을 필요 같은
왜 내장 CF 검색을 사용하고 있지 않습니까? – orangepips
무슨 소리 야? – crosenblum
@crosenblum : ' '을 사용하여 정보를 색인하면 ' '을 사용하여 검색 결과를 문맥 강조 표시 할 수 있습니다. –
orangepips