我已经设置了 ace 来渲染 html 代码,例如,他渲染了以下代码
1 <html>
2 <body>
3 <table>
4 <tr>
5 <td>
6 test
7 </td>
我想获取给定代码片段的行号,例如如果我搜索
"<html><body><table><tr><td>"
我想移动光标并突出显示第 6 行。 不幸的是,内置 find 函数的 ace 似乎只能找到同一行的代码,所以
ace.find('<html>', options)
工作并突出显示第 1 行,但是
ace.find('<html><body>', options)
根本没有找到任何东西。
您能解释一下原因或给我一个解决方法吗? 提前致谢;)
最佳答案
如果<html>
和<body>
在不同的行上,您需要搜索 ace.find('<html>\n<body>', options)
(与 \n
)
另一种方法是使用正则表达式在 editor.getValue()
中查找所需的偏移量字符串,并使用
pos = session.doc.indexToPosition(100)
session.selection.moveToPosition(pos)
将光标移动到它
关于javascript - ace编辑器查找代码片段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28529268/