Ultraedit脚本中字符串操作的问题

时间:2014-01-20 10:40:01

标签: ultraedit

在UE脚本中,我有一些像这样的代码:

var FNstring = UltraEdit.activeDocument.selection;
var FNstring = UltraEdit.activeDocument.selection.replace(">>","</p>"); 
var FNstring = UltraEdit.activeDocument.selection.replace("\r\n","<BR>"); 

var_dump确认此时字符串的内容为:

text text text
text text text text text text text text text
text text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text text
text text text text text text text text text
text text text text text text text text text
text text text text text text>>

我没有做对的是那些find / replace命令。

1)替换&gt;&gt; (/ p)(仅限一次)

2)用(br)替换所有CR / LF。 (0或&gt; 1)

上面的代码就是不这样做。我弄错了。一点帮助将非常感激。 最好, FVG

1 个答案:

答案 0 :(得分:1)

这3行代码如下:

  1. 在UltraEdit中将活动文档中的选择副本创建为JavaScript字符串变量。
  2. 在UltraEdit中将活动文档中的选择副本创建为与以前名称相同的JavaScript字符串变量,从而丢弃先前的字符串,并在创建的副本中将>>替换为</p>。 / LI>
  3. 在UltraEdit中将活动文档中的选择副本创建为与以前名称相同的JavaScript字符串变量,从而丢弃先前的字符串,并在创建的副本中将\r\n替换为<BR>。 / LI>

    这不是你想要的。 JavaScript String对象的replace函数与UltraEdit文档对象的replace函数无关。

    您可以使用以下两行:

    var FNstring = UltraEdit.activeDocument.selection.replace(/>>/g,"</p>");
    UltraEdit.activeDocument.write(FNstring.replace(/\r\n|\n|\r/g,"<BR>"));
    

    这两行如下:

    1. 在UltraEdit的活动文档中创建当前选择的副本到JavaScript字符串变量FNstring,并在创建的副本中替换所有>> </p>
    2. 再创建一个以前创建的字符串FNstring的副本,用<BR>替换所有出现的DOS(Windows)或UNIX或MAC行终止,并在活动文档中的选择上写下这个新字符串of UltraEdit。