正则表达式javascript中*和+之间的差异

正则表达式javascript中*和+之间的差异,javascript,regex,Javascript,Regex,两者给出相同的结果,那么*和+符号之间的区别是什么呢。 我怎么知道该用哪一个呢 var str= "oofo fooloo" var StarSymbol= str.match(/fo*/g); var PlusSymbol= str.match(/fo+/g) console.log(StarSymbol) // ["fo", "foo"] console.log(PlusSymbol) // ["fo", "foo"] 你又在问同样的问题。让我解释一下 var str= "oofo fo

两者给出相同的结果,那么*和+符号之间的区别是什么呢。 我怎么知道该用哪一个呢

var str= "oofo fooloo"
var StarSymbol= str.match(/fo*/g);
var PlusSymbol= str.match(/fo+/g)
console.log(StarSymbol)  // ["fo", "foo"]
console.log(PlusSymbol) // ["fo", "foo"]

你又在问同样的问题。让我解释一下

var str= "oofo fooloo"
var StarSymbol= str.match(/fo*/g);
var PlusSymbol= str.match(/fo+/g)
console.log(StarSymbol)  // ["fo", "foo"]
console.log(PlusSymbol) // ["fo", "foo"]
Ya,这两个输入都给出了相同的结果,但是fo*将单独匹配f,而fo+将不匹配。*将上一个令牌重复零次或多次,其中+将上一个令牌重复一次或多次。因此,这要求前一个令牌至少重复一次

例如:

o*搜索零个或多个o

o+搜索一个或多个o

浏览教程

*表示次数介于0和无限之间,而+表示至少有一次不能为零


更详细地说,*类似于写{0,},而+类似于写{1,}

看看这是否有帮助,你的问题实际上不是特定于JavaScript的。如果分数为1.6k,你可以很容易地找到它。不知道为什么posted@raghavendra当前位置你仍然回答了这个问题…是的,伙计,就像你喜欢我们的doReason否决票一样?不确定。我想是欧普·迪迪。投票表决。因为这有助于回答这个问题,所以我没有否决这个答案。你又在问同样的问题,那么你为什么要回答?你应该把它当作一个复制品。见鬼,你有mjölnir。不要鼓励人们继续发帖,通过回复他们。
> var str= "f"
undefined
> str.match(/fo*/g);
[ 'f' ]
> str.match(/fo+/g);
null
>