我想在字符串中替换substring

时间:2013-12-14 04:33:17

标签: string batch-file replace substring dos

01: SETLOCAL EnableExtensions EnableDelayedExpansion
02: ... 
03:  IF /i "%tValueType%" EQU "string" (
04:   SET "vValueBefore=%1"
05:   SET "vValueAfter=%2"
06: 
07:   FOR %%p IN (equ neq sub) DO (
08:    IF /i "!tOperator!" EQU "%%p" (
09:     SET "tOperatorValid=valid"
10:     IF /i "!tOperator!" EQU "sub" (
11:      SET "tConditions="!vValueAfter:!vValueBefore!=!" NEQ "!vValueAfter!""
12:     ) ELSE (
13:      SET "tConditions="!vValueBefore!" %tOperator% "!vValueAfter!""
14:     )
15:    )
16:   )
17:  )
18: ...

第11行:我想在字符串中将subs substring替换为“”(cut substring)但是错误。

2 个答案:

答案 0 :(得分:2)

  SET "tConditions="!vValueAfter:%vValueBefore%=!" NEQ "!vValueAfter!""

应该可以工作,因为循环中没有更改vValueBefore

答案 1 :(得分:1)

11:      for /F "delims=" %%v in ("!vValueBefore!") do SET "tConditions="!vValueAfter:%%~v=!" NEQ "!vValueAfter!""
相关问题