Excel 使用批处理文件从多个csv文件中删除特殊字符
我想使用批处理文件删除csv文件中的所有特殊字符。我的csv文件只有一列关键字可以在google中输入 比如说 1.电子商务 2.墨尔本中央商务区? 3.3墨尔本牙医 墨尔本最好的牙医 有时我也可以使用阿拉伯/中文字符等等 在这里,当我将这些文件添加到GoogleAdwords关键字规划器时,它向我显示了一个错误,在忽略错误时,我得到了错误的关键字点击数,为了避免错误,我需要从csv文件中删除所有特殊字符 我有数百个csv文件,希望将更新的(没有特殊字符)文件保存到现有文件中 我试过了Excel 使用批处理文件从多个csv文件中删除特殊字符,excel,batch-file,csv,Excel,Batch File,Csv,我想使用批处理文件删除csv文件中的所有特殊字符。我的csv文件只有一列关键字可以在google中输入 比如说 1.电子商务 2.墨尔本中央商务区? 3.3墨尔本牙医 墨尔本最好的牙医 有时我也可以使用阿拉伯/中文字符等等 在这里,当我将这些文件添加到GoogleAdwords关键字规划器时,它向我显示了一个错误,在忽略错误时,我得到了错误的关键字点击数,为了避免错误,我需要从csv文件中删除所有特殊字符 我有数百个csv文件,希望将更新的(没有特殊字符)文件保存到现有文件中 我试过了 @ech
@echo off
set source_folder=C:\Users\Username\Documents\iMacros\Datasources\a
set target_folder=C:\Users\Username\Documents\iMacros\Datasources\keyfords-csv-file
if not exist %target_folder% mkdir %target_folder%
for /f %%A in ('dir /b %source_folder%\*.csv') do (
for /f "skip=1 tokens=1,2* delims=," %%B in (%source_folder%\%%A) do (
echo %%B>>%target_folder%\%%A
)
)
timeout /t 20
但最终从csv文件中删除了所有记录
有什么办法可以让我
1.仅接受来自A-Z、A-Z和0-9的标准字符
2.或者删除可以在该字符串中放入特殊字符的所有字符串。喜欢
string1=“?%!@$^&*”
3.或者我可以在csv文件中提到只接受标准英文字符吗
有没有办法通过批处理文件或任何框架来实现这一点
谢谢我认为这在Powershell中要干净得多
$sourceFolder = "C:\Users\Username\Documents\iMacros\Datasources\a"
$targetFolder = "C:\Users\Username\Documents\iMacros\Datasources\keyfords-csv-file"
MkDir $targetFolder -ErrorAction Ignore
$fileList = Dir $sourceFolder -Filter *.csv
ForEach($file in $fileList)
{
$file | Get-Content | %{$_ -replace '[^\w\s,\"\.]',''} | Set-Content -Path "$targetFolder\$file"
}
我从源文件夹中取出每个文件,获取内容,替换任何不需要的字符,然后将其保存到另一个文件中。我在中间使用了一个小正则表达式[[^ \w,s],[\] [/COD],用替换命令。胡萝卜>代码> ^ < /代码>是不匹配的操作符。因此,任何与单词字符<代码> \W,空格字符<代码> > <代码>,昏迷>代码>,<代码>,双引号>代码> \ <代码>,或句号<代码> \<代码>
有人可能会找到一个更好的正则表达式来满足你的需求,但我想你明白了 从技术上讲,您可以拥有一系列:
set variable=%variable:"=%
set variable=%variable:(=%
set variable=%variable:)=%
set variable=%variable:&=%
set variable=%variable:%=%
等等。我知道写这些特殊的人物会让人很烦恼
看到字母表中的字母比“特殊字符”要少,可以对文件/文件夹名进行查找,如果a-z中的字母为真,则写入并移动到下一个字符
_Arescet你能定义“特殊字符”或“普通字符”吗?我猜他说的是标准的批量有毒字符-括号、感叹号、符号、管道、插入符号、问号和星号。我想将这些csv文件上传到google关键字规划器。它显示了一个错误,即“关键字不能包含非标准字符,如:第1行:!@%,*!!?????关键字不能包含非标准字符,如:第905行:!@%,*:Ø不确定如何进行这项任务最好用更高级的语言来解决,而不是批处理。你能用批处理来发布答案吗?用户@Penny正在使用批处理文件寻求帮助。也许您可以使用
for
循环for/f%%p in(^=^(^)^&%%)do set variable=%variable:%%p=%