首页 > 解决方案 > Ruby 如何显示正则表达式(在日志和屏幕中)

问题描述

我正在尝试做的事情:

我正在尝试显示和记录用于搜索字符串的正则表达式值。

问题:

甚至to_s不起作用。我最终使用虚拟 regexD 来显示它。

我不知道该怎么做:

有没有将 alpha 正则表达式转换为 char 的好方法?

语境:

 $VERBOSE = nil       

 regex  = /alpha.centavra/i            # 
 regexD= 'alpha.centavra'    # to display
 puts "1. Search for: " + regex.to_s        ## (?i-mx:alpha.centavra)
 puts "2. Search for: " + regex.to_s.gsub!('(?i-mx:','').gsub!(')','')

       File.open('D:/x/test.dat', 'w') { |f|   f.write  ('Search for ' + regex.to_s) }

标签: ruby

解决方案


你需要调用.source你的正则表达式。

regex  = /alpha.centavra/i
regex.source # => "alpha.centavra"

推荐阅读