批处理循环查询某个字符串中是否有#符号怎么写?
1个回答
展开全部
普通变量,且没在某复合句中被更改赋值,可以如下例 (此写法还应注意是确信变量v不会是空的):
if "%v:#=%"=="%v%" (echo 不含#)else 含#
看提问中用的%%j 则肯定是在for中用 需要把它赋给一普通变量,比如
set "v=%%j"
且在设置变量延迟情况下用!v!代%v%
if defined v (if not "!v:#=!"=="!v!" (echo 含#) else echo 不含#)else 变量 v 整体为空
还可以用查找命令find或findstr 不过此命令为外部命令,如用在循环中很费时不推荐使用
echo "%%j"| find "#" >nul&&(echo 含 #)||echo 不含
至于可能含特殊符号,上面例中全都加了引号不会有影响
if "%v:#=%"=="%v%" (echo 不含#)else 含#
看提问中用的%%j 则肯定是在for中用 需要把它赋给一普通变量,比如
set "v=%%j"
且在设置变量延迟情况下用!v!代%v%
if defined v (if not "!v:#=!"=="!v!" (echo 含#) else echo 不含#)else 变量 v 整体为空
还可以用查找命令find或findstr 不过此命令为外部命令,如用在循环中很费时不推荐使用
echo "%%j"| find "#" >nul&&(echo 含 #)||echo 不含
至于可能含特殊符号,上面例中全都加了引号不会有影响
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询