Functional MSO transductions, deterministic two-way transducers, as well as streaming string transducers are all equivalent models for regular functions. In this paper, we show that every regular function, either on finite words or on infinite words, captured by a deterministic two-way transducer, can be described with a regular transducer expression (RTE ). For infinite words, the two-way transducer uses Muller acceptance and ω-regular look-ahead. RTEs are constructed from constant functions using the combinators if-then-else (deterministic choice), Hadamard product, and unambiguous versions of the Cauchy product, the 2-chained Kleene-iteration and the 2-chained omega-iteration. Our proof works for transformations of both finite and infinite words, extending the result on finite words of Alur et al. in LICS'14.The construction of an RTE associated with a deterministic two-way transducer is guided by a regular expression which is “good” wrt. its transition monoid. “Good” expressions are unambiguous, ensuring the functionality of the output computed. Moreover, in “good” expressions, iterations (Kleene-plus or omega) are restricted to subexpressions corresponding to idempotent elements of the transition monoid. “Good” expressions can be obtained with an unambiguous version of Imre Simon's famous forest factorization theorem.To handle infinite words, we introduce the notion of transition monoids for deterministic two-way Muller transducers with look-ahead, where the look-ahead is captured by some backward deterministic Büchi automaton.This paper is an extended version of [15] presented at LICS'18.