Step up voltage previous to LM317
Switcher noise is a subtle thing, we shouldn't generalize. 

Some loads don't give a damn about the noise (for example, a cpu) while others will care. Frequency of noise is also very important (most analog stuff like opamps and LDOs have decreasing rejection at higher freq due to capacitive coupling and decreasing feedback loop gain). So you should know your load.

Sometimes its not the output noise of the switcher that bites, but the noise it injects into its input supply (if same supply is used for sensitive circuits).

Or radiated noise, or noise injected into GND if the layout sucks, for example by violating the rule "You shall not let the square wave high di/dt current loop into the ground plane!" For example consider the EMU0202USB soundcard. There is a 3V3 switcher in it, it is located about 5cm from the cpu it powers. The cpu has tons of caps, but the switcher has none on its output! I guess they thought there were enough caps around the cpu. As a result, the 1MHz inductor ripple current runs in the ground plane over 5cm... also it has boost switchers to power the opamp, and the layout is not good. This turns the local GND into a mess, and the headphone jack is in the middle of the mess... it outputs tons of HF noise.

Different switchers have widely different output noise characteristics, and the noise they inject on their input is also very different. For example:


Buck has an inductor on the output


Thus its output current is a continuous sawtooth. The output inductor forms a LC filter with the output cap, reducing ripple. Remaining ripple will depend on frequency, inductor's value and parasitic capacitance, and output capacitors value, ESL, and ESR... and of course... layout!

Buck's input current is, however, a fast-edged square wave, so it's going to inject lots of HF into its input supply, and this noise may find its way to other parts of the circuit.

Say you got +15V for your opamps. And you use a buck to get +3.3 for your micro. This buck will draw HF square wave current from +15V and screw it up. In this case, a filter is needed... on the input of the buck, not on the output!


Boost does the opposite, inductor is on the input.


It draws a sawtooth current from the input, and outputs a square wave current. Its output is thus inherently noisier than a buck.

Ripple and spikes

Also these two types of noise must be distinguished. 

A 100kHz switcher will have 100kHz ripple on the output for example. As said above, buck will have less HF harmonics in the ripple waveform due to output inductor providing a free LC filter. Opamps and other stuff with falling PSRR at HF like this.

It is actually easier to filter out HF ripple (like 500kHz) than LF ripple (like the 25kHz switchers of times long past), because the inductor and caps are smaller/cheaper, so you can use more effective filters in the same space. Also when the inductor is small you can get a 
shielded one for cheap.

And... the other noise type is the spikes. This is the combination of a MOSFET switching large current in nanoseconds, thus very high di/dt, thus nasty L.di/dt spikes everywhere there is inductance. These switching spikes have a verrrry wide bandwidth (like GHz) and a tendency to couple into anything and leak everywhere if the layout sucks. 

Additionally, the spikes are modulated by output current and the mode the switcher is using. If it is in powersave mode you get trains of spikes, then as it shuts down, it goes silent. Your slow opamps will rectify and detect these modulated HF spikes, your fast opamps will attempt to process them as signal...

Some switchers use slow/soft-switching on purpose to reduce the spikes. Also, ferrite beads work great.

Now, to answer your question:

You need 12V input, 0-30V out, and you don't specify the current, nor the target efficiency, so I can't answer.

Anyway, if you need efficiency, use a buck-boost like this one. I won't recommend the external FET version for higher currents since it needs a 4 layer board and this doesnt fit your 100€ budget. I'm not sure it can be coerced to go down to 0V, but I guess it should, as output voltage can be controlled by injecting a known current into the feedback node.

You can also use a pure boost, followed by a LDO. However at low output voltages, efficiency will suck. If this is powered by a 12V battery, then you will care about efficiency, so you have a problem.

If this is mains-powered, then ditch the useless 12V requirement, get a 32V or more DC supply, and use a simple buck to make your 0-30V output!