如何搜索带连字符的单词

时间:2015-06-01 09:43:35

标签: livecode

如何搜索带连字符的单词,例如(Alexander-great)如果这个单词出现在搜索列表中,那么输出应该像Alexander-great:1这里1表示在我正在使用的主滚动字段中出现的特定单词的时间以下代码。

on mouseUp
  put fld"MytextField"into Mytext   
put fld "SRText" into myData
   split myData by cr and colon
   put the keys of myData into myData

   repeat for each words myWord in Mytext
      if myWord is among the words of myData then
                  if myCounts[myWord] is empty then
            put 1 into myCounts[myWord]
            --answer "Haii"
         else
            add 1 to myCounts[myWord]

         end if
      end if
   end repeat
   combine myCounts by cr and colon
   put myCounts  

2 个答案:

答案 0 :(得分:0)

请使用此代码

if myWord contains the words of myData then 

而不是

if myWord is among the words of myData then

答案 1 :(得分:0)

您的代码应该可以正常工作,不过您可以查看更紧凑的版本:

   ...
repeat for each words myWord in Mytext
       if myWord is among the words of myData then add 1 to myCounts[myWord]
end repeat
...  

LC中的局部变量(包括数组变量)可以即时创建和加载。无需声明它们或使用默认值创建它们。请单步执行处理程序,并观察变量观察器的内容。

请注意,您的方法不是禁止的,但是不必要地冗长。随着您变得更有经验,您将变得更有效率。

克雷格纽曼