2016-04-14 15 views
1

Bir Lua işlevi yazıyorum, ben url örneğin "ev" için özellikle dize varsa url böyle bakarsak, bir if/else deyimi eklemek istiyorum:Lua'da, URL'de belirli bir dizeyi nasıl bulabilirim?

http://AAA/home 
http://AAA/home/01 
http://AAA/home/02 

Sonra fonksiyonunu durdurmak, ancak

http://AAA/next 
http://AAA/test 

kimse bana url belirli dize algılama konusunda bir ipucu verebilir: url "ev" dizesini yoksa, o zaman fonksiyonunu mı?

cevap

2

Bunu yapmanın iki yolu vardır: Sen string.match() veya string.find() kullanabilirsiniz, ben şahsen (çoğu insan do) string.find() kullanın.

Kodunuzu şöyle görünecektir:

text = "http://AAA/home" 
 

 
if string.find(text, "home?",0,true) then 
 
    # do what you want 
 
else 
 
    # do something else 
 
end

PS: Yinelenen soru - How to check if matching text is found in a string in Lua? sen string.find her kullandığınızda

+2

, dizi arama unutmayın bir olduğu için regex - yani "ev" için arama "Hom" ile de eşleşir. Bunu önlemek için, düz bir dizgeye işaret etmek için string.find (text, "home?", 0, true) kullanın [kılavuza bakın] (http://www.lua.org/manual/5.1/manual.html# pdf-string.find) –

+0

Teşekkürler! Düzeltecek. – hiperbolt

İlgili konular