ace编辑器找到代码片段

时间:2015-02-15 18:03:28

标签: javascript ace-editor

我有设置ace来呈现html代码让我们说例如他渲染了以下代码

    1 <html>
    2 <body>
    3 <table>
    4 <tr>
    5 <td>
    6 test
    7 </td>

我想获取代码片段的行号,例如,如果我搜索

"<html><body><table><tr><td>" 

我想移动光标和高光线6。 不幸的是,ace内置的find函数似乎只能找到同一行的代码,所以

ace.find('<html>', options) 

工作并突出显示第1行但

ace.find('<html><body>', options) 

根本找不到任何东西。

你能解释一下为什么或给我一个解决方法吗? 谢谢提前;)

1 个答案:

答案 0 :(得分:0)

如果<html><body>位于不同的行,您需要搜索ace.find('<html>\n<body>', options)\n

另一种方法是使用regexp在editor.getValue()字符串中查找所需的偏移量,然后使用

pos = session.doc.indexToPosition(100)
session.selection.moveToPosition(pos)

将光标移动到它