JavaScript正则表达式-匹配一个包含一些字符但不包含其他字符的字符串

布坎农

要求:

正则表达式应匹配一个不包含“ @”符号,但至少包含两个字母字符,且总长度为2至50个字符的字符串。

通过示例:

"Hi there!%%#"
"         fd"
"  9 z 80212132 z"

失败示例:

"anything with @"
"a"
"  9 z 80212132 "
"This string does not contain at symbol and has two characters but is too long!"

我相信我已经接近了,但是除[a-zA-Z]以外的任何其他字符都将失败,并且我不确定为什么:

^((?![@])(?=[a-zA-Z]).){2,50}$
维克多·史翠比维

您的正则表达式不会检查至少两个Alpha。

您可以使用以下正则表达式:

^(?=(?:[^A-Za-z]*[A-Za-z]){2})[^@]{2,50}$

正则表达式演示

说明

  • ^ -字符串开始
  • (?=(?:[^A-Za-z]*[A-Za-z]){2}) -必须至少出现两次零个或多个非字母字符,再跟一个字母
  • [^@]{2,50} -除2到50个字符以外的其他字符 @
  • $ -字符串结尾。

var re = /^(?=(?:[^A-Za-z]*[A-Za-z]){2})[^@]{2,50}$/; 
var strs = ['Hi there!%%#', '         fd' , '  9 z 80212132 z', 'anything with @ a', '  9 z 80212132 ', 'This string does not contain at symbol and has two characters but is too long!'];
 // demo
for (var s of strs) {
  document.body.innerHTML += "<i>" + s.replace(/ /g, '&nbsp;') + "</i> test result: <b>" +  re.test(s) + "</b><br/>";
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

正则表达式可匹配任何不包含特殊字符或空格但可以包含一个空格的字符串。或_,但不在开头或末尾

来自分类Dev

Javascript正则表达式匹配用空格分隔但不包含点的字符串

来自分类Dev

正则表达式-替换仅包含一个但重复字符的字符串

来自分类Dev

一个单一的字符串和数字组合正则表达式,还有其他一些要求

来自分类Dev

正则表达式匹配单词,即使它包含一些字符 [dash,dot,..]

来自分类Dev

包含至少一个数字的字符串的正则表达式

来自分类Dev

正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

来自分类Dev

正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

来自分类Dev

正则表达式以匹配包含某些字符串而不包含其他字符串的行

来自分类Dev

如果文本仅包含一个字符串,则匹配文本的正则表达式

来自分类Dev

正则表达式如果字符串不包含另一个单词,则匹配该单词

来自分类Dev

Javascript正则表达式字符串以结尾,并且仅包含一次

来自分类Dev

正则表达式-匹配字符串不包含一个组,不包含另一个组

来自分类Dev

正则表达式:必须至少包含一个数字和字母,但不能包含其他字符/空格

来自分类Dev

Javascript 正则表达式包含

来自分类Dev

正则表达式以匹配2个字符串并包含另一个字符串

来自分类Dev

两个可能包含另一个字符串的字符串之间的正则表达式匹配

来自分类Dev

正则表达式以匹配包含与字母一样多的数字的字符串

来自分类Dev

除了仅包含数字字符的字符串外,获取包含一个或多个单词字符的字符串的正则表达式是什么?

来自分类Dev

如果字符串* only *包含字符集中的所有*个字符,再加上可选的一个,则匹配正则表达式

来自分类Dev

需要一个正则表达式来拆分javascript中的字符串

来自分类Dev

正则表达式以检测仅包含(至少一个)字母和特殊字符的字符串

来自分类Dev

寻找一个正则表达式来从 javascript 中的字符串中提取一些值

来自分类Dev

如何匹配正则表达式模式,但如果字符串中包含其他字符,则返回None?

来自分类Dev

正则表达式帮助-匹配特定的字符串,但不包含在[!foobar!]中

来自分类Dev

正则表达式找到一个字符串,但找不到包含该字符串的其他某些更长的字符串

来自分类Dev

输入字符串中的一些额外字符使正则表达式无法匹配

来自分类Dev

正则表达式匹配-Javascript

来自分类Dev

正则表达式匹配(JavaScript)

Related 相关文章

  1. 1

    正则表达式可匹配任何不包含特殊字符或空格但可以包含一个空格的字符串。或_,但不在开头或末尾

  2. 2

    Javascript正则表达式匹配用空格分隔但不包含点的字符串

  3. 3

    正则表达式-替换仅包含一个但重复字符的字符串

  4. 4

    一个单一的字符串和数字组合正则表达式,还有其他一些要求

  5. 5

    正则表达式匹配单词,即使它包含一些字符 [dash,dot,..]

  6. 6

    包含至少一个数字的字符串的正则表达式

  7. 7

    正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

  8. 8

    正则表达式匹配URL,其中不包含字符串,但还包含其他字符串

  9. 9

    正则表达式以匹配包含某些字符串而不包含其他字符串的行

  10. 10

    如果文本仅包含一个字符串,则匹配文本的正则表达式

  11. 11

    正则表达式如果字符串不包含另一个单词,则匹配该单词

  12. 12

    Javascript正则表达式字符串以结尾,并且仅包含一次

  13. 13

    正则表达式-匹配字符串不包含一个组,不包含另一个组

  14. 14

    正则表达式:必须至少包含一个数字和字母,但不能包含其他字符/空格

  15. 15

    Javascript 正则表达式包含

  16. 16

    正则表达式以匹配2个字符串并包含另一个字符串

  17. 17

    两个可能包含另一个字符串的字符串之间的正则表达式匹配

  18. 18

    正则表达式以匹配包含与字母一样多的数字的字符串

  19. 19

    除了仅包含数字字符的字符串外,获取包含一个或多个单词字符的字符串的正则表达式是什么?

  20. 20

    如果字符串* only *包含字符集中的所有*个字符,再加上可选的一个,则匹配正则表达式

  21. 21

    需要一个正则表达式来拆分javascript中的字符串

  22. 22

    正则表达式以检测仅包含(至少一个)字母和特殊字符的字符串

  23. 23

    寻找一个正则表达式来从 javascript 中的字符串中提取一些值

  24. 24

    如何匹配正则表达式模式,但如果字符串中包含其他字符,则返回None?

  25. 25

    正则表达式帮助-匹配特定的字符串,但不包含在[!foobar!]中

  26. 26

    正则表达式找到一个字符串,但找不到包含该字符串的其他某些更长的字符串

  27. 27

    输入字符串中的一些额外字符使正则表达式无法匹配

  28. 28

    正则表达式匹配-Javascript

  29. 29

    正则表达式匹配(JavaScript)

热门标签

归档