for typesetting tables with design of experiments, I have to typeset strings like "+ - + +", - - - +", etc. in a column of a table to represent the so called pattern of the experimental run (sometimes they also contain "a", "A" and "0" (zero)).

However, the width of the "+" and "-" sign are very different in the used font (standard font in KOMA script class scrreprt) and a sequence of 2 or 3 dashes creates one long or very long dash....

So I'm searching for a way to easily typeset e. g. "+ - - - + -" with a little spacing between the characters and (if possible) that several different strings composed of the same number of characters ("+" or "-", "a", "A" and "0") would be aligned with each other, when they are in the same column of a table.

I hope I could make clear what I need, some examples how it shall NOT look are found here:  

![bad example](https://i.stack.imgur.com/YZkQH.png)
in line 9 it should be "+ - -" and in 10 "- - +", line 5 should be "- - -"

It looks a little better, if I insert `\,` between the characters, but as the widths are different, it is still not aligned:  

![enter image description here](https://i.stack.imgur.com/dC5x3.png)

Sure, I could split it up in centered columns like `- & + & - & - & ...`, but the tables are already complicated enough and I do not want to add 3 to 7 columns...

Does anybody have an idea how to solve that?
Maybe a command that parses the string like --+--++ and typesets it with a "constant spacing"?

------- edit:

added math mode for "+" and "-", looks better now, but not perfect:
![math mode for plus and minus](https://i.stack.imgur.com/D3hFt.png)

```
    \documentclass[11pt, a4paper%,  halfparskip
    ]{scrreprt}

    \usepackage{booktabs}

    \begin{document}

\begin{tabular}{cccccccc}
\midrule
         1 &        $+$$+$$-$           \\
         2 &        $+$$-$$+$           \\
         3 &        $-$$+$$+$           \\
         4 &        000                 \\
         5 &        $-$$-$$-$           \\
         6 &        000                 \\
\midrule
         7 &        $-$$+$$-$           \\
         8 &        000                 \\
         9 &        $+$$-$$-$           \\
        10 &        $-$$-$$+$           \\
        11 &        $+$$+$$+$           \\
        12 &        000                 \\ 
\midrule
        13 &        000                 \\
        14 &        00a                 \\
        15 &        00A                 \\
        16 &        0A0                 \\
        17 &        A00                 \\
        18 &        0a0                 \\
        19 &        a00                 \\
        20 &        000                 \\
\toprule
\end{tabular}  

\end{document}

```

---

example and further question about side-effects:

I used the solution of Michel and it looks good, but there is one thing I'm not sure about:
Is it possible that it changes the free space between columns?
I have the impression that the first 3 columns are closer together than the rest...
How can I fix that?

![solution with side effects?!](https://i.stack.imgur.com/25OVA.png)
['https://tex.stackexchange.com/questions/14576', 'https://tex.stackexchange.com', 'https://tex.stackexchange.com/users/4009/']
An easy way to achieve this would be to typeset the plusses and minuses in a monospace font with `\verb|+-+-|` 

There are however [issues](https://tex.stackexchange.com/q/203/215) with verbatim text which you might run into...
Another solution might be to use `\texttt` and macros for your plusses etc. Here's an example:

```
\documentclass{article}
\usepackage[T1]{fontenc}
\newcommand\p{+}
\newcommand\m{-{}}
\begin{document}
\texttt{++---++}

\texttt{\p\p\m\m\m\p\p}

\texttt{++\m\m aA0}
\end{document}

```

You need to use a macro like this for the minus sign because otherwise they get turned into en-dashes if you use the `fontenc` package. This should also mono-space letters easily.
A quick and dirty solution might be to enclose the symbols in braces: `${-}{+}{+}{+}$` looks better than `$-+++$`, as LaTeX won't try to interpret each `+` or `-` as a binary operator.