【发布时间】:2020-01-27 09:08:52
【问题描述】:
我是批处理文件编程的新手。需要编写一个可以删除整数值周围的单引号的批处理文件。
实际上,我正在编写一个批处理文件来从文本文件中准备一个 SQL 插入命令。几乎完成但坚持删除包含整数的单引号。
假设,我有一个文本文件,它的内容是这样的。
'abc','def','123','1abc'
'xy','mncef','456','cd'
我想要一个批处理文件来删除整数周围的大引号,输出应该是这样的。
'abc','def',123,'1abc'
'xy','mncef',456,'cd'
我试过下面的代码,但它删除了所有的撇号。
@echo off
setlocal enabledelayedexpansion
(for /f "tokens=1-4 delims=," %%a in (sample.txt) do (
set "$line=%%a,%%b,%%c,%%d"
echo !$line:'=!
)
)>out.txt
type out.txt
接下来的输出是:
abc,def,123,1abc
xy,mncef,456,cd
但我希望从该位置中删除单引号,因为整数值将位于每行中的固定位置,例如此处的第 3 行。
【问题讨论】:
-
你试过什么,你卡在哪里了?请edit您的问题并分享您的编码尝试minimal reproducible example!就目前而言,您的问题只不过是一个代码请求,这显然是题外话。请参加tour 并在此处学习How to Ask!顺便说一句,“上面的逗号”实际上被称为“撇号”......
-
我猜如果我们可以通过for循环修改每一行中的第三个token或字段,我们可能会达到效果。
标签: batch-file