我有一个关键字列表,我正在寻找它们在文本文件中的位置。除非我有一个包含多个单词的关键字,否则一切都很好。
例如,我有一个要搜索的字符串:
您好,我是一连串美妙的词,它们会让您再也想不起来。以下是一些值:
值1:这是一个的值
值2:这是两个的值
值3:这是三个的值
所以我有一个关键字列表:list = "wonderful words, value 1, value 2, value 3"
因此,我需要遍历列表并找到单词/短语,然后获取其位置,以便执行中间函数来获取数据。
问题是当关键字是单词的集合时,它将被忽略。
任何帮助都会很棒。谢谢!
<cfset stringToSearch = "INCIDENT # 12345
LONG TERM SYS# C12345
REPORTED: 15:08:34 05/21/19
Nature: MEDICAL
Address: 34234 W Test ST; 312S
City: Testville
Responding Units: F32423
Cross Streets:
Between: Test ST & N Tester ST
Lat= 39.429019 Lon= -86.432111
Comments: This is a comment">
<cfset list_to_search = 'INCIDENT:,LONG TERM SYS:,REPORTED:,Nature:,Address:,City:,Responding Units:,Cross Streets:,Lat=,Lon=,Comments'>
<cfoutput>
<cfset x = '1'>
<cfset last_keyword = "">
<cfloop list="#list_to_search#" index="keyword" delimiters=",">
<cfif #x# neq '1'>
#x#. #last_keyword# - #keyword# <br><br>
1st: #REFind(last_keyword,stringToSearch)#<br>
2nd: #REFind(keyword,stringToSearch)#<br>
#x#. #last_keyword#: #Mid(stringToSearch,
FindNoCase(last_keyword,stringToSearch)+len(last_keyword),
FindNoCase(keyword,stringToSearch)-
FindNoCase(last_keyword,stringToSearch))#<br><br>
</cfif>
<cfset last_keyword = #keyword#>
<cfset #x# = #x# + 1>
</cfloop>
我正在尝试获得关键字结尾处的开始位置,一直到下一个关键字开头处,以获取介于两者之间的数据。就像我说的,直到多词关键字,一切都很好。