有没有一种方法可以通过行号削减值?例如,这是我的编辑器的文本区域:
initial function () {
a = '1';
b = '2';
}
我将使用getRange()从编辑器获取初始函数内的值,这是我想要得到的:
a = '1';
b = '2';
现在,我想将文本附加到每一行值中:
let val = cm.getRange({line: 0, ch: 0}, {line: cm.lineCount()-1, ch: 0});
val = 'someText' + val.replace(/\s/g, '');
我会得到这样的东西
someTexta='1';b='2';
但是我想要的是
someTexta = '1';
someTextb = '2';
codemirror中是否可以通过行将值切成数组或其他内容?
您可以使用.split(/\n/)
将字符串拆分为单独的行。这将为您在每一行的数组中提供一个元素。然后,您可以将.map()
的每一行添加为带有"someText
的字符串(仅当该行有效时-因此line ?
检查)。然后,您可以使用.join('\n')
将其转换回字符串。请参见下面的示例:
let val = ` a = '1';
b = '2';`;
val = val.split(/\n/).map(line => line ? "someText" +line.trim() : line).join('\n');
console.log(val);