有一個快速的問題:我有一個這樣的文件:Ruby的正則表達式/模式匹配的精確字/字符串匹配
ip-10-0-12-84.eu-west-1.compute.internal, master, instnum=1, Running
.....
.....
ip-10-0-26-118.eu-west-1.compute.internal, master_rabbit, instnum=4, Running
ip-10-0-26-116.eu-west-1.compute.internal, master_rabbit, instnum=5, Running
.....
ip-10-0-26-68.eu-west-1.compute.internal, sql_master, instnum=9, Running
ip-10-0-13-244.eu-west-1.compute.internal, nat, instnum=2, Running
我的目標是要讀取的文件,跳過註釋(以#
開始)空白/空白行以及其中包含nat
或master
的行。我嘗試這樣做:
open('/tmp/runnings.txt').each do |line|
next if line =~ /(^\s*(#|$)|nat|master)/
這幾乎是工作,但它也消除了與master_rabbit
和它sql_master
行。我怎樣才能選擇master
而不是其他任何組合?它可以在同一行中完成嗎?乾杯!!
搜索「主人,」而不只是‘主’:) – tessi
做同樣的去'nat',以及?或者你想要匹配'國家'呢? –
@Tim Pietzcker:目前不需要'國家',但這是一個很好的觀點。你的答覆蓋了。 – MacUsers