使用正则表达式javascript匹配单词与点符号

Won*_*der 2 javascript

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

Example:
-anyword.anyword.
-.
-.anyword
Run Code Online (Sandbox Code Playgroud)

一旦我检测到他/她输入了一个带有点的值,我会认为它是无效的.

我知道我可以使用regexp来做到这一点,但我仍然在学习它.所以任何人都可以在这里给我一个亮点,将不胜感激:).

T.J*_*der 5

你可以使用String#indexOf:

if (theString.indexOf(".") !== -1) {
    // It has a dot
}
Run Code Online (Sandbox Code Playgroud)

但是如果你真的想要使用正则表达式(这对于找到a来说会有点过分.):

if (/\./.test(theString)) {
    // It has a dot
}
Run Code Online (Sandbox Code Playgroud)

/\./部分是正则表达式.开始和结束/的正则表达式的分隔符,像"'用于字符串.正则表达式的内容\.我们需要之前的反斜杠,.因为否则,在正则表达式中,.意味着"匹配任何字符".它之前的反斜杠"逃脱"它并告诉正则表达式字面上匹配一个点.(我们在String#indexof示例中不需要它,因为indexOf没有任何特殊处理..)