.Eski vb solun Net eşdeğer(string, uzunluk) fonksiyonu?
Bir sigara gibi .net programcı ben arıyorum .eski vb net eşdeğeri left(string, length)
işlevi. Herhangi bir uzunlukta bir dize için çalıştı o tembel oldu. , left("foobar", 3) = "foo"
beklendiği gibi, en yardımsever, left("f", 3) = "f"
.
.net string.Substring(index, length)
menzil dışında her şey için istisnalar atar. Java hep Apache Commons lang vardı.StringUtils kullanışlı. Google çok fazla dize işlevleri arıyor anlamıyorum.
Düzenleme:
@Noldorin- Vay, VB.NET için teşekkür ederim uzantıları! Bana birkaç saniye aynısını alsa da ilk karşılaşmam, c#:
public static class Utils
{
public static string Left(this string str, int length)
{
return str.Substring(0, Math.Min(length, str.Length));
}
}
Statik sınıf ve yöntemi olarak this
anahtar kelime not. Evet, "foobar".Left(3)
olarak çağırmak kadar basit. Ayrıca c# extensions on msdn bkz.
CEVAP
Burada iş yapacak bir uzantısı yöntemi.
<System.Runtime.CompilerServices.Extension()> _
Public Function Left(ByVal str As String, ByVal length As Integer) As String
Return str.Substring(0, Math.Min(str.Length, length))
End Function
Bu eski Left
fonksiyon (12 *yani* ) VB veya daha yeni VB.NET sözdizimini kullanarak gibi kullanabilirsiniz anlamına gelir, yani
Dim foo = "f".Left(3) ' foo = "f"
Dim bar = "bar123".Left(3) ' bar = "bar"
RegExp. exec arasındaki fark nedir() v...
Perl: string trim fonksiyonu ve ardınd...
Javascript'In Python eşdeğer zip ...
Belirli bir uzunluk için tekrar string...
C# String.İsNullOrEmpty Javascript eşd...