使用以下代码,如果文件名为Bravo
,我希望123456.txt
。
if File_Name#=~ ('.+(775|776|777|778)\.txt')
@outputs['answer'] = 'Alpha'
elsif File_Name#=~ (.+(456|546)\.txt)
@outputs['answer'] = 'Bravo'
但答案会产生Alpha
。我在这里缺少什么?
答案 0 :(得分:2)
#
定义了评论的开头。测试正则表达式的运算符是=~
,而不是#=~
。
if File_Name
将被选中,除非File_Name
是false
或nil
,因此您始终获得'Alpha'
。
创建正则表达式的文字语法是//
,而不是('')
:
if File_Name =~ /.+(775|776|777|778)\.txt/