替换在livecode中无法正常工作

时间:2015-04-07 10:36:17

标签: livecode

我使用此代码进行替换,但在某些情况下(开始没有空格的行)。怎么克服这个? 我们应该在该代码中使用正则表达式(\ n \ | \ s)吗?

将字段“myTextField”的htmlText放入myHtml 将caseSensitive设置为true 在myHtml中将“re”替换为“sa” 将fld“myTextField”的htmlText设置为myHtml

2 个答案:

答案 0 :(得分:0)

假设您只想在单词的开头更改“re”的实例,请尝试循环遍历每个单词,测试是否以“re”开头并相应地更改:

    repeat with i = 1 to the number of words in myHtml
      if char 1 to 2 of word i of myHtml = "re" then replace "re" with "sa" in word i of myHtml 
    end repeat

注意:我没有使用'为每个重复'的原因是你无法对'重复每个'进行解析的事情进行更改

答案 1 :(得分:0)

我认为最快的解决方案是进行双重替换

 replace " re" with " ha" in field "myTextField"
 replace return & "re" with return & "ha" in field "myTextField"

有一个replaceText允许你使用正则表达式,但是你不能在LiveCode中使用\ 1,所以你最终会用相同的字符替换所有的空格。如果可以,您可以使用:

put replaceText(field "myTextField", "\sre", " ha") into field "myTextField"