使用regexp javascript将单词与点符号匹配
我有一个搜索功能。我想检查用户是否输入带有点(.)的文本单词/句子 当我检测到他/她输入了一个有点的值时,我会认为这是无效的。 我知道我可以使用regexp来实现这一点,但我仍在学习过程中。因此,任何人都可以在这里给我一个启示,我将不胜感激:) 您可以使用使用regexp javascript将单词与点符号匹配,javascript,Javascript,我有一个搜索功能。我想检查用户是否输入带有点(.)的文本单词/句子 当我检测到他/她输入了一个有点的值时,我会认为这是无效的。 我知道我可以使用regexp来实现这一点,但我仍在学习过程中。因此,任何人都可以在这里给我一个启示,我将不胜感激:) 您可以使用字符串#indexOf: if (theString.indexOf(".") !== -1) { // It has a dot } 但是,如果您真的想使用正则表达式(仅仅查找,这就太过分了): /\./部分是正则表达式。开头和结尾
字符串#indexOf
:
if (theString.indexOf(".") !== -1) {
// It has a dot
}
但是,如果您真的想使用正则表达式(仅仅查找
,这就太过分了):
/\./
部分是正则表达式。开头和结尾的/
是正则表达式的分隔符,比如“
和”
是字符串。正则表达式的内容是\。
我们需要在
之前加反斜杠,因为在正则表达式中,
表示“匹配任何字符”。它前面的反斜杠“转义”它会显示并告诉正则表达式与一个点匹配。(我们在String#indexof
示例中不需要它,因为indexof
对
没有任何特殊处理)最好使用String
的indexof
函数,然后Regexp
,因为Regexp
在这个脚本中会是一个滥杀:
如果返回-1,则使用MyString.indexOf('.'),字符串中没有点。如果返回值是某个整数,如0、1、2等,则表示点在字符串中的位置。所以-1表示没有圆点
例如:
if(MyString.indexOf('.') === -1)
{
//No Dot is there, continue search
}
else
{
//Invalid string, dot is present
}
试试这个
indexOf()
方法返回字符串中指定值第一次出现的位置
如果要搜索的值从未出现,则此方法返回-1
var str = "test.test";
if(str.indexOf('.') === -1){
alert("no dot found.");
}
else{
alert("dot found.");
}
if(/\./.test(str)){…}
@elclanrs,这是一个答案……测试您的正则表达式,因为它易于使用,并且在学习时很有帮助。@elclanrs我更新了我的问题。单词test可以表示任何单词。@WonderingCoder:test
是RegExp
的一种方法,而不是字面上的“test”。
if(MyString.indexOf('.') === -1)
{
//No Dot is there, continue search
}
else
{
//Invalid string, dot is present
}
var str = "test.test";
if(str.indexOf('.') === -1){
alert("no dot found.");
}
else{
alert("dot found.");
}