我有一个数据列表,需要在行的开头和行末添加一个'符号。所以原始数据看起来像
11223334444xxx55555
11xxx223334444555xxx55
11xxxx22333444xxx455555
11xxxxx22333444455555
11xxxxxx223334444555xxx55
我希望所有行看起来像
11223334444yyyy55555
11yyyy223334444555yyyy55
11yyyyx22333444yyyy455555
11yyyyxx22333444455555
11yyyyyyyy223334444555yyyy55
即'yyyy'替换为'xxx',我如何编写代码?打字稿和JavaScript都是完美的。
对不起,我不好。我想开发一个扩展来做到这一点,上面只是一个例子。下面的许多答案只是缺少选择全文部分的内容。
const textEditor = vscode.window.activeTextEditor;
if (!textEditor) {
return; // No open text editor
}
var firstLine = textEditor.document.lineAt(0);
var lastLine = textEditor.document.lineAt(textEditor.document.lineCount - 1);
var textRange = new vscode.Range(0,
firstLine.range.start.character,
textEditor.document.lineCount - 1,
lastLine.range.end.character);
textEditor.edit(function (editBuilder) {
editBuilder.replace(textRange, '$1');
});
});
上面的replace函数只有一个replace参数,而不是两个,我该如何替换呢?
答案 0 :(得分:0)
尝试一下:
让checkD =
11223334444xxx55555
11xxx223334444555xxx55
11xxxx22333444xxx455555
11xxxxx22333444455555
11xxxxxx223334444555xxx55
;
checkD.replace(/ xxx / g,'yyyy');
答案 1 :(得分:0)
您可以使用正则表达式进行尝试。在MDN上了解更多信息。
这是一个数组示例:
let data = [
"11223334444xxx55555",
"11xxx223334444555xxx55",
"11xxxx22333444xxx455555",
"11xxxxx22333444455555",
"11xxxxxx223334444555xxx55"
];
let max = data.length;
for (let i = 0; i < max; i++) {
let regex = new RegExp("xxx", "g")
data[i] = data[i].replace(regex, "yyyy")
}
console.log(data);
这是一个字符串示例:
let data = `11223334444xxx55555
11xxx223334444555xxx55
11xxxx22333444xxx455555
11xxxxx22333444455555
11xxxxxx223334444555xxx55`;
let regex = new RegExp("xxx", "g")
data = data.replace(regex, "yyyy")
console.log(data);
答案 2 :(得分:0)
即'yyyy'代替'xxx',我如何编写代码
split
和join
是我使用的
str.split('yyyy').join('xxx');