我試圖從數組中拆分字符串並將其保存回來,但無法很好地拆分。 我已經將數據存儲到數組@nameInt。 數據:perl如何從數組中拆分字符串並將其保存回
ge-1/1/2.552
ge-1/1/2.561
ge-1/1/2.562
ge-1/1/2.580
ge-1/1/2.582
ge-1/1/2.590
ge-1/1/2.592
ge-1/1/2.640
ge-1/1/2.642
ge-1/1/2.644
ge-1/1/2.650
代碼:
foreach my $interface(@nameInt){
@sepInt = split /[.]/, $interface;
}
我試圖拆並保存到新陣列(@sepInt),但是當我試圖打印出來,它的節目和錯誤
print "name interface: ".$sepInt[0][0]." | vlan id: ".$sepInt[0][1];
Can't use string ("ge-1/1/5") as an ARRAY ref while "strict refs" in use
預期:
name interface: ge-1/1/2 | vlan id: 552
name interface: ge-1/1/2 | vlan id: 561
name interface: ge-1/1/2 | vlan id: 562
...
so on
謝謝你的朋友,如果它是空的,就像沒有「。」的ge-1/1/2,我得到錯誤消息「在串聯(。)或字符串中使用未初始化的值」。是因爲我嚴格使用嗎? – rabka
這是因爲你打算打印不存在的東西。如果元素中沒有'.',那麼不能有'$ sepInt [0]'和'$ sepInt [1]' – fugu
如何將未初始化的值更改爲其他值?如果元素中沒有'.'? – rabka