Cách nhanh nhất và dễ nhất (trong ASP cổ điển) để kiểm tra xem chuỗi có một số chuỗi (có chiều dài lớn hơn 0) tức là KHÔNG "Null", "Không có gì "," Empty "hoặc '' chuỗi rỗngChuỗi không phải là rỗng, trống hoặc chuỗi rỗng
Trả lời
Bạn có thể sử dụng chức năng VarType()
để kiểm tra xem đó có phải là chuỗi không, sau đó bạn có thể kiểm tra xem chuỗi đó có trống không. Câu lệnh này sẽ chỉ truyền qua một chuỗi không rỗng.
If VarType(MyString) = 8 Then
If MyString <> "" Then
'String is Not Null And Not Empty, code goes here
End If
End If
Vui lòng kiểm tra mã của bạn trước khi bạn đăng. VarType của "" và Trim ("") là 8 (chuỗi). Vì vậy, ý tưởng của bạn để kiểm tra 'VarType (MyString)> 1' là thiếu sót. –
@ Ekkehard.Horner Bạn nói đúng, tôi không nhận thấy điều đó. Dù sao, tôi đã sửa nó. –
Bây giờ số, booleans, và tất cả mọi thứ mà Len() stringyfies sẽ vượt qua như là chuỗi 'tốt'. –
<%
Dim x,y
x = "abcdefg"
'counting length of string
y = Len(x)
Response.Write (y)
'checking string is empty or not
If Len(x) = 0 then
Response.Write ("<p>String is empty</p>")
Else
Response.Write ("<p>String is not empty</p>")
End If
%>
Hy vọng điều này là hữu ích.
Trước tiên, bạn cần phải đọc bài đăng gốc. – Paul
Để đảm bảo rằng Biến thể bạn xử lý có thuộc loại "chuỗi" phụ, bạn cần có chức năng VarType hoặc TypeName. Để loại trừ các chuỗi có độ dài bằng không, bạn cần Len(). Để bảo vệ chống lại các chuỗi không gian, bạn có thể ném vào một Trim().
Mã để minh họa/thử nghiệm với:
Option Explicit
Function qq(s) : qq = """" & s & """" : End Function
Function toLiteral(x)
Select Case VarType(x)
Case vbEmpty
toLiteral = "<Empty>"
Case vbNull
toLiteral = "<Null>"
Case vbObject
toLiteral = "<" & TypeName(x) & " object>"
Case vbString
toLiteral = qq(x)
Case Else
toLiteral = CStr(x)
End Select
End Function
Function isGoodStr(x)
isGoodStr = False
If vbString = VarType(x) Then
If 0 < Len(x) Then
isGoodStr = True
End If
End If
End Function
Dim x
For Each x In Array("ok", "", " ", 1, 1.1, True, Null, Empty, New RegExp)
WScript.Echo toLiteral(x), CStr(isGoodStr(x))
Next
đầu ra:
cscript 26107006.vbs "ok" True "" False " " True 1 False 1.1 False True False <Null> False <Empty> False <IRegExp2 object> False
Ví dụ hay: +1 – Lankymart
Bạn có thể thử có một cái gì đó như thế này:
Function nz(valToCheck, valIfNull)
If IsNull(valToCheck) then
nz = valIfNull
Else
nz = valToCheck
End if
End function
và sau đó bạn sẽ sử dụng nó như thế này :
if nz(var,"") <> "" then
'--string has something in it
else
'--string is null or empty
end is
Sẽ rất tuyệt nếu bạn có thể hiển thị tập lệnh hoàn chỉnh thay vì nói '--string có nội dung nào đó trong đó'. Điều đó sẽ giúp nhiều người dùng hơn. – jazzurro
Đây là một lớp lót giúp tránh tất cả các sự cố với Null
bằng cách ghép nối giá trị bằng một chuỗi rỗng. Nó hoạt động cho Null
, Empty
, ""
và tất nhiên, các chuỗi có độ dài thực tế! Người duy nhất nó không (cũng không nên) làm việc cho là Nothing
, bởi vì đó là cho các biến đối tượng, trong đó một chuỗi không phải là.
isNullOrEmpty = (Len("" & myString) = 0)
này đã làm việc cho tôi:
if mystring = "" then wscript.echo "Empty string"
else wscript.echo "String is not empty"
- 1. .Trim() khi chuỗi rỗng hoặc rỗng
- 2. IOS: xác minh xem chuỗi có phải là chuỗi rỗng
- 3. php là rỗng hoặc trống?
- 4. Chuỗi ký tự thành số, diễn giải chuỗi rỗng hoặc trống là 0
- 5. danh sách kiểm tra chuỗi là null hoặc rỗng
- 6. Chuỗi rỗng trong cột không rỗng trong MySQL?
- 7. rỗng vs chuỗi rỗng trong Oracle
- 8. Làm cách nào để trả lại biến chuỗi đầu tiên không rỗng hoặc rỗng
- 9. Cú pháp PHP để kiểm tra "không phải là null" hoặc một chuỗi rỗng?
- 10. VB.NET Chuỗi Mảng Rỗng
- 11. dịch với chuỗi rỗng
- 12. ToString trên chuỗi rỗng
- 13. Kiểm tra chuỗi rỗng hoặc không có giá trị
- 14. Loại để đại diện cho một chuỗi mà không phải là rỗng hoặc khoảng trống trong F #
- 15. Tham gia dấu phẩy nếu không trống hoặc không rỗng
- 16. Không bao gồm chuỗi rỗng hoặc null với jQuery $ .param()
- 17. LINQ cú pháp nơi chuỗi giá trị không phải là null hoặc rỗng
- 18. MVC không xác nhận chuỗi rỗng
- 19. Chuỗi rỗng trong LINQ
- 20. Thêm chuỗi rỗng vào RadComboBox
- 21. chuỗi Tại sao rỗng không phải là một đối tượng chuỗi
- 22. chuỗi rỗng Literal
- 23. Azure: Đối số chuỗi kết nối Web.config không được rỗng hoặc rỗng
- 24. Chuỗi rỗng chấm dứt là gì?
- 25. LINQ: Kiểm tra xem cột chuỗi có giá trị (ví dụ: không rỗng hoặc trống)
- 26. chuỗi Chia trong C#, không gian trống cũng được coi là chuỗi làm thế nào để loại bỏ chuỗi rỗng
- 27. Chuỗi chia không trả kết quả rỗng
- 28. Oracle NVL với chuỗi rỗng
- 29. Gọi c_str của chuỗi rỗng
- 30. Rỗng Chuỗi Nhận kích hoạt
Có một lớp String trong ASP cổ điển? –
@ LajosArpad Classic ASP không phải là một ngôn ngữ mà nó là một công nghệ có thể xử lý mã VBScript hoặc mã Javascript phía máy chủ. Vì vậy, VBScript không có một lớp chuỗi (như .net/C#), nhưng không có chức năng để thao tác chuỗi và biến. –
Nếu bạn có một biến chuỗi, khi tôi hiểu câu hỏi của bạn, chỉ cần kiểm tra nó với 'Len (s)> 0'. Nếu bạn cần xác minh _type_ biến của bạn để đảm bảo đó là chuỗi, hãy xem câu trả lời (phức tạp hơn) bên dưới. – Bond