有没有相当于VB的"LIKE#"的javascript?

Urb*_*coz 2 javascript vb.net string hash vb-like-operator

我需要编写一个函数来检测字符串输入是否是日期的有效格式.允许的格式是:

#### (e.g. 2003)
##/#### (e.g. 12/2003)
#/#### (e.g. 9/2003)
##/####-##/#### (e.g. 12/2003-04/2005)
Run Code Online (Sandbox Code Playgroud)

但我需要防止无效字符串(例如"20031","ABCD","200A").

我已经在VB中编写了一个函数来执行此操作(下面),但我需要在Javascript中执行此操作.

VB

Public Sub detectDateFormat(ByVal myDate As String)
    If myDate Like "####" Then
        'Do Stuff 1
    ElseIf myDate Like "##/####" Or myDate Like "#/####" Then
        'Do Stuff 2
    ElseIf myDate Like "##/####-##/####" Then
        'Do Stuff 3
    Else
        'Invalid date format
        Exit sub
    End If
End Function
Run Code Online (Sandbox Code Playgroud)

似乎javascript没有等同于"Like",并且检测一个字符是数字还是字母是很棘手的.任何人都可以建议一个好方法吗?

Llo*_*oyd 6

你最接近的可能是正则表达式.比LIKE更强大,但也可能更复杂.

例如:

__CODE__

将会:

__CODE__

  • 是的,不是.问题是他正在检查4位数字.所以isNaN 123456789和2012年一样有效. (3认同)