GNU/Linux >> Znalost Linux >  >> Linux

Proč `\d` nefunguje v regulárních výrazech v sed?

\d je přepínač, nikoli makro regulárního výrazu. Pokud chcete místo [0-9] použít nějakou předdefinovanou "konstantu". výraz, zkuste spustit tento kód:

s/[[:digit:]]+//g

Žádná taková speciální skupina znaků v sed není. Budete muset použít [0-9] .

V GNU sed, \d zavádí kód desetinného znaku o jedné až třech číslicích v rozsahu 0-255. Jak je uvedeno v tomto komentáři.


Linux
  1. Představení regulárních výrazů

  2. Proč variabilní expanze bez $ funguje ve výrazech?

  3. Bash + Ověřit název regulárním výrazem?

  1. Bash:Regulární výrazy v substituci?

  2. chmod nefunguje

  3. Proč můj symbolický odkaz nefunguje?

  1. Regulární výrazy:Stahování všeho dohromady

  2. proč linux bridge nefunguje

  3. Proč sed ve výchozím nastavení nepoužívá rozšířený režim regulárních výrazů?