首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何检查列包含子字符串,另一列以子字符串开头

如何检查列包含子字符串,另一列以子字符串开头
EN

Stack Overflow用户
提问于 2022-07-22 14:28:15
回答 1查看 57关注 0票数 0

这是我第一次处理批处理文件。我试图从原始csv和管道输出中提取某些列到新的csv。下面的代码是我根据这个链接编写的:

https://stackoverflow.com/a/17557532/16034206

代码语言:javascript
运行
复制
@echo off 
setlocal EnableDelayedExpansion

Rem for /f "skip=1 usebackq tokens=1,2,10,11 delims=," %%i in (sample.csv) do @echo %%i,%%j,%%k,%%l >>output.csv
echo "Your script is starting..."

FOR /F "skip=1 usebackq delims=" %%L in (sample.csv) DO (
    set "line=%%L,,,,,,,,"
    set "line=#!line:,=,#!"
    FOR /F "tokens=1,2,10,11 delims=," %%a in ("!line!") DO (
        set "param1=%%a"
        set "param2=%%b"
        set "param10=%%c"
        set "param11=%%d"
        set "param1=!param1:~1!"
        set "param2=!param2:~1!"
        set "param10=!param10:~1!"
        set "param11=!param11:~1!"
        if "%%~A"=="RH" echo !param1!, !param2!, !param10!, !param11! >> output.csv
    )
)

echo "Your script has completed"

我希望应用逻辑来检查param1包含一个子字符串"@gmail.com“,并且在将4列的特定行输出到csv之前,param10从一个特定的字符串"100”开始。

我检查了如何使用这个链接中的if-语句:https://stackoverflow.com/a/17474377/10671013,但是我还没有找到任何关于“包含子字符串”或“从字符串开始”的链接。请给我建议。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-22 15:01:56

从第一列中删除查找的子字符串,并将其与原始字符串进行比较,如果不相等( string包含子字符串),则检查另一列的前三个字符。(此子字符串替换不区分大小写):

代码语言:javascript
运行
复制
if not "!param1:@gmail.com=!" == "!param1!" if  "!param10:~0,3!" == "100" echo ...
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73081959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档