2012-01-27 103 views
4

我正在爲某些數據庫備份自定義一個開源Perl腳本。我對Perl沒有太多的知識。有人能告訴我如何將參數傳遞給qw[]如何將參數傳遞給perl qw []?

例如原來的代碼是這樣的

@selected_databases = qw[testdb1 testdb2 testdb3]; 

我想將其轉換爲類似下面

$_dblist = "testdb1 testdb2 testdb3"; 
@selected_databases = qw[$_dblist]; 

,但它無法正常工作。有人能告訴我如何將一個變量傳遞給qw []?

+1

可能重複的[是否有內插引用類似單詞列表運算符?](http://stackoverflow.com/questions/5771428/is-there-an-interpolating-quote-like-word-list -operator) – Zaid 2012-01-27 08:24:55

回答

11

qw不支持插值。根據perl-doc。因此,你不能這樣做,這是行不通的。要達到您所期望的目標,請使用split函數。

$_dblist = "testdb1 testdb2 testdb3"; 
@selected = split(' ', $_dblist); 
+0

完美的作品。謝謝。 – codlib 2012-01-27 05:51:21

+0

很高興它的工作原理,不要忘記接受正確的答案= D – zellio 2012-01-27 05:57:39

+0

編輯'split'的參數來匹配qw的行爲。 – ikegami 2012-01-27 07:38:08

相關問題