WATCH with numeric characters

  • Konuyu başlatan Konuyu başlatan Joseph
  • Başlangıç tarihi Başlangıç tarihi

Joseph

Guest
Aşağıdaki maç komut kodu sayıları içeren dizelere uygulanır ( 0 ve 9 arasında) aldatılabilir.
E.g. str dizesini tanımlarım:
(setq str "var1 var2 var3 var4 var5")

Bu nedenle bazı karşılaştırmalar ve sonucu yankılıyorum.
1) (wcmatch str "*var[2-59]*)
2) (wcmatch str "*var[6-89]*) >Nil
(wcmatch str)[6-92]** **

Yanlış sebep:
1) t ortaya çıktığı gibi, doğru olduğunu söylemek cazip, çünkü var2'den 99'a kadar aralığın en az bir dizesi var1 ve var5 arasında.
2) nil ortaya çıktığı gibi, burada bile doğru olduğunu söylemek cazip, çünkü var6'dan gelen aralığın 10 ila 5. arasında aralığı tamamen dışsal olduğu için.
3) Daha önceki sebeplere göre, nil'i bekleyebileceğim, çünkü var6'dan gelen aralığın2'ye kadar tamamen dışsaldır5.

Yardımı iyi okumak, wcmatch'in bir anda bir karakterle karşılaştırdığını fark ettim, bu yüzden kod [6-92] Bu şekilde okunmalıdır: var6 ve var9 ve dize var2 arasında aralığı; bu nedenle str dize ile karşılaştırmak için alt satırlar:
Var6, var7, var8,var9 ve var2, ve bu, var1 ve var5 arasındaki sonucu ortaya çıkaran ikincisidir.
 

Forum İstatistikleri

Konular
58,521
Mesajlar
499,056
Kullanıcılar
104,110
Son Üye
ChristianR

Çevrimiçi Üyeler

Şu anda çevrimiçi üye yok.
Geri
Üst