Javascript 如何使用regex和no方法检查字符串是否有3个或更多小数点
如何使用正则表达式检查字符串是否有3个或更多小数点。 我只想使用正则表达式模式来解决这个问题Javascript 如何使用regex和no方法检查字符串是否有3个或更多小数点,javascript,regex,Javascript,Regex,如何使用正则表达式检查字符串是否有3个或更多小数点。 我只想使用正则表达式模式来解决这个问题 var string1 = "1.23432 12.123.1231"; // true var string2 = "1.23432 12123.1231"; // false 我认为可行但没有: let regx2 = RegExp(/.{3,}/g); if(regx2.test(string1)){ output = false; } 任何帮助都将不胜感激。另一种选择是使用功
var string1 = "1.23432 12.123.1231"; // true
var string2 = "1.23432 12123.1231"; // false
我认为可行但没有:
let regx2 = RegExp(/.{3,}/g);
if(regx2.test(string1)){
output = false;
}
任何帮助都将不胜感激。另一种选择是使用功能
匹配
:
这种方法只计算点的数量,而不考虑当前的格式
此正则表达式捕获所需的组
console.log(([1.23432 12.123.1231.match(/(\)/g)| |[])。长度>=3);
console.log(((1.234321223.1231).match(/(\)/g)| |[])。length>=3)代码>另一种选择是使用功能匹配
:
这种方法只计算点的数量,而不考虑当前的格式
此正则表达式捕获所需的组
console.log(([1.23432 12.123.1231.match(/(\)/g)| |[])。长度>=3);
console.log(((1.234321223.1231).match(/(\)/g)| |[])。length>=3)
您可以删除所有非
字符并检查其长度
让strs=[
"11.11 1.111.11.1111",
"1.1.1"
]
对于(让我们来看一看STR){
console.log(s.replace(/[^\.]/g',)。长度>=3)
}
您可以删除所有非
字符并检查其长度
让strs=[
"11.11 1.111.11.1111",
"1.1.1"
]
对于(让我们来看一看STR){
console.log(s.replace(/[^\.]/g',)。长度>=3)
}
在将字符串与常规字符串进行匹配时,可以使用match
检索匹配项
函数有超过3个或更多个{
返回s.match(/\./g)。长度>=3;
}
var string1=“1.23432 12.123.1231”;//真的
var string2=“1.23432 12123.1231”//假的
控制台.log(hasmorethan3或more(string1));
console.log(超过3个或更多(string2))
在将字符串与常规字符串进行匹配时,可以使用match
检索匹配项
函数有超过3个或更多个{
返回s.match(/\./g)。长度>=3;
}
var string1=“1.23432 12.123.1231”;//真的
var string2=“1.23432 12123.1231”//假的
console.log(超过3个或更多(string1));
console.log(超过3个或更多(string2))代码>使用正则表达式的替代方法是使用String.split()
并检查长度,如下所示:
console.log(“1.23432 12.123.1231”。拆分(“.”)。长度>3);//真的
console.log(“1.234321223.1231”。拆分(“.”)。长度>3);//false
使用正则表达式的替代方法是使用String.split()
并检查长度,如下所示:
console.log(“1.23432 12.123.1231”。拆分(“.”)。长度>3);//真的
console.log(“1.234321223.1231”。拆分(“.”)。长度>3);//false
RegExp.test()
返回一个布尔值,因此您可以简单地返回该值。修正你的打字错误也会清除你的错误:
var string1 = "1.23432 12.123.1231"; // true
var string2 = "1.23432 12123.1231"; // false
let regx2 = RegExp(/.{3,}/g);
console.log(regx2.test(string1); // true
console.log(regx2.test(string2); // false
RegExp.test()。修正你的打字错误也会清除你的错误:
var string1 = "1.23432 12.123.1231"; // true
var string2 = "1.23432 12123.1231"; // false
let regx2 = RegExp(/.{3,}/g);
console.log(regx2.test(string1); // true
console.log(regx2.test(string2); // false
我要找的正则表达式是
let regx2 = RegExp(/^(.*\.){3,}\d+$/g);
if(regx2.test(string2)){
console.log('testing 3 or more . :', string1);
output = false;
}
我正在努力提高我使用正则表达式的知识,因此正在寻找一个只使用正则表达式而不使用方法的答案。感谢您的帮助,实际上我甚至没有想过检查字符串是否包含小数,然后检查返回的次数。我要找的正则表达式是
let regx2 = RegExp(/^(.*\.){3,}\d+$/g);
if(regx2.test(string2)){
console.log('testing 3 or more . :', string1);
output = false;
}
我正在努力提高我使用正则表达式的知识,因此正在寻找一个只使用正则表达式而不使用方法的答案。感谢您的帮助,实际上我甚至没有想过检查字符串是否包含小数,然后检查返回的次数。您想知道字符串中的任何数字是否包含超过3位小数,还是想知道哪个数字?可能重复retrun true代码>可能是一个难点。您想知道字符串中的任何数字是否包含超过3位小数,还是想知道哪个数字?可能重复retrun true
可能是一个难点。@mhodges是的,但是OP说明了这一点:如何使用正则表达式检查字符串是否有3个或更多小数点。是的,可能是XY问题,但是-我提供了一个替代方案,以防万一。@mhodges是的,但是OP说明了这一点:如何使用正则表达式检查字符串是否有3个或更多小数点。是的,可能是XY的问题,虽然-我提供了一个替代方案,以防万一。如果匹配返回true,我将通过返回true来结束函数。正则表达式本身找不到包含3个或更多小数的字符串,因此无法正常工作。我最终找到了正则表达式,使其工作,即/^(.*\.){3,}\d+$/g。要用匹配值结束函数,只需调用return regx2.test(string1)代码>如果匹配返回true,我将通过返回true来结束函数。正则表达式本身找不到包含3个或更多小数的字符串,因此无法正常工作。我最终找到了正则表达式,使其工作,即/^(.*\.){3,}\d+$/g。要用匹配值结束函数,只需调用return regx2.test(string1)代码>/^(.*\.){3,}\d+$/g.test(“1.1.1.1.1”)
返回true.)如果给定字符串中的小数点超过2,我希望匹配返回true,以便将值设置为false<代码>/^(.*\.){3,}\d+$/g.test(“1.1.1.1.1”)
返回true.)如果给定字符串中的小数点超过2,我希望匹配返回true,以便将值设置为false;