Javascript 如何实现条件中的任意数字?

Javascript 如何实现条件中的任意数字?,javascript,jquery,regex,Javascript,Jquery,Regex,我正在尝试检测字符串是否为列表项样式…,我还有以下代码: var test = "1. anything"; if( test[0] == /\d/ && test[1] == '.' ) { alert("it is list-item") } 但是我从来没有看到过警报()。为什么?我希望看到该警报,因为该变量的第一个字符是数字,第二个字符是您没有正确使用正则表达式。不能只检查字符串是否等于正则表达式,需要对字符串或正则表达式调用方法 var test = "1. anyth

我正在尝试检测字符串是否为列表项样式…,我还有以下代码:

var test = "1. anything";
if( test[0] == /\d/ && test[1] == '.' ) { alert("it is list-item") }

但是我从来没有看到过
警报()。为什么?我希望看到该警报,因为该变量的第一个字符是数字,第二个字符是

您没有正确使用正则表达式。不能只检查字符串是否等于正则表达式,需要对字符串或正则表达式调用方法

var test = "1. anything";
if( /\d/.test(test[0]) && test[1] == '.' ) { alert("it is list-item") }
请注意,我使用的是RegExp

正确使用正则表达式,可以将此条件简化为:

if( /^\d\./.test(test) ) {
   alert("it is list-item");
}

您没有正确使用正则表达式。不能只检查字符串是否等于正则表达式,需要对字符串或正则表达式调用方法

var test = "1. anything";
if( /\d/.test(test[0]) && test[1] == '.' ) { alert("it is list-item") }
请注意,我使用的是RegExp

正确使用正则表达式,可以将此条件简化为:

if( /^\d\./.test(test) ) {
   alert("it is list-item");
}

尝试下面这样的工作演示

解决方案1:使用
测试
功能

var test=“1.任何东西”;

如果(/\d/.test(test[0])&&test[1]='.'){alert(“这是列表项”)}
请使用下面的工作演示来尝试这样做

解决方案1:使用
测试
功能

var test=“1.任何东西”;
如果(/\d/.test(test[0])&&test[1]='.'){alert(“这是列表项”)}
这怎么样

if (test.match(/^\d+\.*/) !== null) {
    alert('it is list-item');
}
这个怎么样

if (test.match(/^\d+\.*/) !== null) {
    alert('it is list-item');
}

test[0]==/\d/
这将不起作用,您可以检查test[0]>0&&test[0]请注意,您的解决方案假设列表最多包含9项。请使用
/^\d+\./.test(str)
。这将检查
str
是否以一个或多个数字开头,后跟一个
test[0]=/\d/
这将不起作用,您可以检查test[0]>0和test[0]是否有效。请注意,您的解决方案假定列表最多包含9项。请使用
/^\d+\./.test(str)
。这将检查
str
是否以一个或多个数字开头,后跟一个
。请在该正则表达式的开头添加
^
。这是一个很好的解决方案,因为它支持具有多个数字的列表项
\.
将匹配任意数量的
,包括无。因此,这也将匹配
123……
。另外,
match
用于提取字符串,请使用
RegExp.test()
检查字符串是否包含某种模式。请在该regext的开头添加
^
。这是一个很好的解决方案,因为它支持具有多个数字的列表项
\.
将匹配任意数量的
,包括无。因此,这也将匹配
123……
。另外,
match
用于提取字符串,请使用
RegExp.test()
检查字符串是否包含某些模式。此外,为了改进答案,您可以在正则表达式中的
\d
之后添加
+
。正如@dikesh所做的那样..为了改进您的答案,您可以在正则表达式中的
\d
之后添加
+
。正如@dikesh所做的。。