Model

2013-09-24 25 views
5

olmadan bir Lua string.find var Bir işlevi uygula, ancak çok kötü görünüyor.Model

function find_without_pattern(s1,s2) 
    for i =1,#s1-#s2+1 do 
     local t = string.sub(s1,i,#s2+i-1) 
     if t == s2 then 
      return i,i+#s2-1 
     end 
    end 
end 

cevap

6

string.find yöntem kendi başına bir plaintext search zorlamak için isteğe bağlı bir 4 parametre temin etmektedir. Örneğin

:

string.find("he#.*o", "e#.*o", 1, true) 

size doğru sonuçlar verecektir.

aktaran Lua manuel sayfalar:

string.find (s, pattern [, init [, plain]])

dördüncü, isteğe bağlı argüman plain imkanları eşleşen deseni kapatır, böylece fonksiyon düz "alt dize bulmak" does operasyonu olarak true değeri desende hiçbir karakterin sihirli kabul edilmemesiyle. plain verilirse, init da verilmelidir.

+0

Güzel, gereksiz çalışmaları yaptım. Ayrıca benimkini de sildiğimden beri cevabını da düzenledim. –