Quantcast
Channel: Replace every backslash in a string with a forwardslash - TeX - LaTeX Stack Exchange
Viewing all articles
Browse latest Browse all 3

Replace every backslash in a string with a forwardslash

$
0
0

I would like to replace every backslash \ inside a macro (string) with a forwardslash /.

The macro is intended to contain a filename in Windows notation which should be replaced by a valid (La)TeX compatible filename. I know that it is preferable to process such strings before using them in a source file, but: is it possible to do it with (La)TeX?

My MWE is:

\documentclass{article}\usepackage{etoolbox}% The following macro is a placeholder.% It should replace '\' by '/'% #1: input% #2: output\newcommand{\replaceBS}[2]{%  \edef\x{\noexpand\edef\noexpand#2{\noexpand\detokenize{\expandonce#1}}}%  \x%}\begin{document}\def\WindowsFilename{c:\files\examples\pictures\myfile.png}\replaceBS{\WindowsFilename}{\TeXFilename}Current result: \texttt{\TeXFilename}Expected result: \texttt{c:/files/examples/pictures/myfile.png}\end{document}

A solution for \replaceBS should be compilable with pdflatex.

I've tried things with the xstring package so far without success. Any solution with TeX, LaTeX3, special packages,... is welcome.

And just to be sure: Yes, I know how to do a replacement with an editor or an external tool ;-)


Viewing all articles
Browse latest Browse all 3

Latest Images

Trending Articles





Latest Images