كيفية تحويل سلسلة التاريخ في asp الكلاسيكي
-
01-07-2019 - |
سؤال
أنا مكتئب قليلاً الآن…
لدي سلسلة تاريخ بالتنسيق الأوروبي dd.mm.yyyy وتحتاج إلى تحويله إلى mm.dd.yyyy مع ASP الكلاسيكي.أي أفكار سريعة؟
المحلول
إذا كان دائمًا بهذا التنسيق، فيمكنك استخدام Split
d = split(".","dd.mm.yyyy")
s = d(1) & "." & d(0) & "." & d(2)
وهذا من شأنه أن يسمح بتواريخ مثل 1.2.99 أيضًا
نصائح أخرى
Dim arrParts() As String
Dim theDate As Date
arrParts = Split(strOldFormat, ".")
theDate = DateTime.DateSerial(parts(2), parts(1), parts(0))
strNewFormat = Format(theDate, "mm.dd.yyyy")
حسنًا، لقد وجدت الحل بنفسي:
payment_date = MID(payment_date,4,3) & LEFT(payment_date,3) & MID(payment_date,7)
هذه طريقة للقيام بذلك من خلال التحقق من سلامة التواريخ:
Dim OldString, NewString
OldString = "31.12.2008"
Dim myRegExp
Set myRegExp = New RegExp
myRegExp.Global = True
myRegExp.Pattern = "(0[1-9]|[12][0-9]|3[01])[- /.](0[1-9]|1[012])[- /.]((19|20)[0-9]{2})"
If myRegExp.Test Then
NewString = myRegExp.Replace(OldString, "$2.$1.$3")
Else
' A date of for instance 32 December would end up here
NewString = "Invalid date"
End If
لدي وظائف معالجة التاريخ الخاصة بي والتي أستخدمها في جميع تطبيقاتي، ولكنها كانت تعتمد في الأصل على هذه العينة:
لا تنتمي إلى StackOverflow