批文件string字符拆分

我想写一个batch file来存储一个文件名字符到一个variables。

例如,如果我的文件名是helloworldhow_are_you? ,我想把第四个字符从右边存入variablesx (在上面的例子中是o_ )。
文件名在我的情况下没有空格。

假设文件名称存储在名为filename的变量中,您可以这样做:

 set "rstr=%filename:~-4%" set "x=%rstr:~0,1%" 

PS
如果需要将filename作为命令行参数传递(例如,第一个参数),请在评估rstrx之前使用它:

 set "filename=%1"