fork(2) download
  1. reg = /(\\e\[(?:[0-9]{1,2}|[3,9][0-8])m)+Text/
  2. mystring = "\\e[1mHello there\\e[34m\\e[40mText\\e[0m\\e[0m\\e[22m"
  3. puts mystring.gsub(reg, '\\1New Text')
  4.  
  5. mystring = "\\e[1mHello there\\e[44m\\e[34m\\e[40mText\\e[0m\\e[0m\\e[22m"
  6. puts mystring.gsub(reg, '\\1New Text')
Success #stdin #stdout 0.01s 7460KB
stdin
Standard input is empty
stdout
\e[1mHello there\e[40mNew Text\e[0m\e[0m\e[22m
\e[1mHello there\e[40mNew Text\e[0m\e[0m\e[22m