使用regexp javascript将单词与点符号匹配

使用regexp javascript将单词与点符号匹配,javascript,Javascript,我有一个搜索功能。我想检查用户是否输入带有点(.)的文本单词/句子 当我检测到他/她输入了一个有点的值时,我会认为这是无效的。 我知道我可以使用regexp来实现这一点,但我仍在学习过程中。因此,任何人都可以在这里给我一个启示,我将不胜感激:) 您可以使用字符串#indexOf: if (theString.indexOf(".") !== -1) { // It has a dot } 但是,如果您真的想使用正则表达式(仅仅查找,这就太过分了): /\./部分是正则表达式。开头和结尾

我有一个搜索功能。我想检查用户是否输入带有点(.)的文本单词/句子

当我检测到他/她输入了一个有点的值时,我会认为这是无效的。

我知道我可以使用regexp来实现这一点,但我仍在学习过程中。因此,任何人都可以在这里给我一个启示,我将不胜感激:)

您可以使用
字符串#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.");
}