General approach if one wants to show that an operation on languages preserves regularity is to assume that the language $L$ is regular, and given as automaton/ expression/ grammar. Based on this representation build a new automaton/ expression/ grammar, and explain the new construct actually represents $L_2$.
For instance, we can do so using regular expressions. See the answer *Showing Regular Languages are closed under removal of rightmost character for a related solution.
Let $\iota$ be the operator that inserts a single occurrence of the symbol $a$ into a language.
We can transform a regular expression for $L$ into a regular expression for $L_2$ by defining recursively
- $\iota(\varnothing) = \varnothing$
- $\iota(\varepsilon) = a$
- $\iota(\sigma) = a\sigma + \sigma a$
- $\iota(RS) = \iota(R)S + R\iota(S)$
- $\iota(R+S) = \iota(R) + \iota(S)$
- $\iota(R^*) = R^*\;\iota(R) \;R^* + a$
Alternatively, here is a proof using closure properties. We know that the regular languages are closed under intersection (with regular languages) and under morphisms and inverse morphsims.
Let $c$ be a new symbol.
Let $\varphi: \{a,b,c\}^* \to \{a,b\}^*$ be the morphism that deletes copies of $c$. Thus $\varphi^{-1}$ is the mapping that inserts copies of $c$ at arbitrary positions. Let $\psi: \{a,b,c\}^* \to \{a,b\}^*$ be the morphism that maps $a,c$ to $a$ and $b$ to $b$ (so it only changes the occurrences of $c$ into $a$. Finally let $K$ be the language over $\{a,b,c\}$ of all strings that contain exactly one occurrence of $c$.
Then $L_2 = \psi(\varphi^{-1}(L)\cap M)$, and is regular whenever $L$ is regular. $\varphi^{-1}$ chooses the position of the extra $a$, $M$ verifies exactly one position was selected, and $\psi$ puts $a$ at the selected position.