2016-04-02 13 views
0

Yani 6 nesnem var. Bunlardan üçü _L son eki ile. Ve diğer 3 farklı alakasız isimler var. Bunları ilk 3 nesne olarak yeniden adlandırmak istiyorum, ancak _L'u R olarak değiştirin. Sonunda bunu yapabiliyordum. Ancak, yorumlanmış çıkış çizgisini kullanırken neden tam sonuç alamadığımı merak ediyor. Temel olarak yalnızca ilk nesnenin düzgün şekilde yeniden adlandırılmasını ve ikinci nesnenin yalnızca L'u'a değiştirmeden yeniden adlandırmasını sağlarım. Ve üçüncü olanla hiçbir şey olmaz. Hata diyor ki: for loop'u tekrar çalıştırdığımda "Hiçbir nesne eşleşmiyor". Ikinci nesnenin düzgün olarak yeniden adlandırılmış olsun ve üçüncü anahtarı olmadan yeniden adlandırılan vb. Ben bunun değişkenlerle ilgisi olduğundan şüpheleniyorum. Küreleri tutuyorMEL komut dosyası düzgün çalışmıyor

$list küreleri tutuyor. $list_old diğer 3 nesneyi elinde tutuyor.

Teşekkür ederiz.

string $list_old[]; // which holds your sphere with _L suffix 
string $list_new[]; // obj which needs the rename with old list but _R 

for ($x=0; $x<size($list_old); $x++) 
    { 
     string $new_name =(substitute("_L", $list_old[$x], "_R")); 
     $rename[$x] = (rename($list_new[$x], $new_name)); 
    } 

yeni adı oluşturun ve sonra yerine -

for ($x = 0; $x < size($list); $x++) { 

    $rename[ $x ] = (rename($list_old[ $x ], $list[ $x ])) ; 
    $subs[ $x ] = (substitute("_L1", $rename[ $x], "_R")); 
    rename ($rename[ $x ], $subs[ $x ]) ; 

    // this doesn't work 
    rename (rename[ $x ], ($subs[ $x ] = (substitute("_L1", ($rename[ $x ] = (rename($list_old[ $x ], $list[ $x ]))), "_R")))) ; 
    } 
+0

belki bu? ($ x = 0; $ x SAF

+0

Yorumlanan satırın birçok kez yeniden adlandırılmaya çalıştığını anlıyor musunuz? İkinci kez, yeniden adlandırılacak hiçbir şey kalmaz. Lütfen lisp yazmayın. – joojaa

+0

@joojaa, nasıl yazardınız? dizideki her şeyi yeniden adlandırmam gerek. Neden ikinci kez yeniden adlandırılacak hiçbir şey olmaz? –

cevap

0

bu daha temizleyici olduğunu hissediyorum.

+0

Bu gecikme için üzgünüm. son zamanlarda meşguldüm. Evet bu temizleyici. Her ne kadar $ rename hattında "Hiçbir nesne eşleşmiyor" hatası alıyorum. Bir şey mi eksik? –

+0

İdeal olarak yukarıdaki hatayı kullanarak bu hatayı almamalısınız. Kaynak listeniz ve yeni listeniz güncellenecek aynı sayıda nesne içermiyorsa. Daha özel bir kullanım durumu verebilir misiniz? Ayrıca listede farklı sayıma sahip olduğunuz durumlarda, yeniden adlandırmadan önce dizeyi doğrulamak için daha fazla denetim noktası eklemeniz gerekir. –

İlgili konular