0
0

More than 5 years have passed since last update.

パターンにマッチした箇所に色を付けてコンソールに出力

Posted at

たとえば、html の class 属性に色をつけて出力する場合

sample.rb
colored = string.dup
colored.gsub!(/class\s*=\s*["'][^'"]*['"]/) {"\033[31m#{$&}\033[0m"}
print colored

gsub のブロック内では $& でマッチした文字列を取り出すことができる。
その、マッチした文字列の前後にターミナル上で色をつけるためのエスケープシーケンス\033[31mと、色をリセットするシーケンス\033[0mで囲むことでパターンにマッチした文字列に色を付けることができる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0