我们要求从文本文件中删除指定字符前每行的所有竞争;
例如,我们在测试文件中有以下内容;
sahdj232$This is 1st line
sdsdsadsa$This is 2nd line
sdasds$This is 3rd line
现在通过将上面的文件名作为批处理文件的输入,我们希望文件具有以下内容;
$This is 1st line
$This is 2nd line
$This is 3rd line
在这里,我们要删除文本文件中“$”之前的所有内容。
有人可以提供帮助。
答案 0 :(得分:1)
@ECHO OFF
SETLOCAL
(
FOR /f "tokens=1*delims=$" %%a IN (q28692650.txt) DO ECHO($%%b
)>newfile.txt
TYPE newfile.txt
GOTO :EOF
我使用了一个名为q28692650.txt
的文件,其中包含我的测试数据。
制作newfile.txt
简单地说,对于文件中的每一行,使用$
作为分隔符将行拆分为两个标记。将第一个标记($
之前的部分)放在%%a
中,将其余部分放在%%b
中。然后回显$和%%b
答案 1 :(得分:0)
读取变量中的文件内容,然后使用以下表达式,假设文件内容已加载到toClean变量中:
var toClean = "sahdj232$This is 1st line\nsdsdsadsa$This is 2nd line\nsdasds$This is 3rd line";
var split = toClean.split(/[\n$]+/);
var clean = '';
for(var i = 0, len = split.length; i < len; i++){
var index = 2 * i + 1;
if( split[index] !== undefined ){
clean += '$' + split[index];
}
}
console.log(clean);
&#13;
只有在您的内容中有$的对号时才会起作用。否则你可以使用正则表达式。