我試圖用批處理腳本替換~
與{~}
的所有實例,以便VBScript不假定我的意思是當我將它傳遞給sendKeys時敲入回車,但是,該變量一直被字面字符串代替代替它。如何在set/replace命令中轉義「〜」?
例如,
rem Intended function;
rem input = Hello~world.
rem output = Hello{~}world.
每次
然而,要麼什麼也不做,或設置refVar字面字符串refVar:~={~}
。
這是我的嘗試;
set refVar=!refVar:~={~}!
rem Also
set refVar=%refVar:~={~}%
rem and...
set refVar=%refVar:^~=^{^~^}%
rem and of course;
set refVar=!refVar:^~=^{^~^}!
rem and even:
set "pre=~"
set "post={~}"
set refVar=%refVar:!pre!=!post!%
rem and the same set commands with;
set refVar=!refVar:%pre%=%post%!
我錯過了一種逃避方法嗎?我很確定它與~
是一個類似命令中的位置字符有關。
我知道這可能是一種解決VBScript中的問題的方法,但是這讓我困擾,沒有明顯的解決方法給我一個限制。
這確實是一個很好的答案。使用參數進行搜索和替換字符串可能會更好,以便於使用。 –
哈哈,我大部分知道批處理文件腳本命令,但我猜測幫助命令是爲其他人尋找相同的答案。無論哪種方式,謝謝,很高興知道解決方案不僅僅是我未嘗試的分隔符的特定順序。 – Bloodied
@Arescet是的,我添加了使用過的命令列表以及如何獲得幫助,因爲我幾乎總是在我的批處理文件相關答案上閱讀這個答案。從你的問題來看,顯然對於我來說,你很瞭解所有這些命令。 – Mofi