Javascript正则表达式连续两次避免相同的字符

标签 javascript regex

我需要一个正则表达式来避免连续两次使用相同的字符(@是字符),但可以在多个位置使用它们。 例如:

someword@someword is ok
someword@@someword is not ok
someword@someword@someword is ok too.

所以基本上这是我现有的正则表达式 /^([a-zA-Z0-9'\-\x80-\xff\*\+ ]+),([a-zA-Z0-9 '\-\x80-\xff\*\+\@ ]+)$/ 其中第一组是姓氏,第二组是名字。我在第一个名称组中引入了一个神奇的字符@,保存时我将用空格替换它。问题是我不能有连续的@符号。

最佳答案

查找任何重复的字符(重复一次):

/(.)\1/.test(string) // returns true if repeated characters are found

查找重复的@:

string.indexOf('@@') !== -1 // returns true if @@ is found

关于Javascript正则表达式连续两次避免相同的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19812720/

相关文章:

javascript - 外部 Javascript、CSS 在 Eclipse 中不起作用

javascript - 在 react js中更新对象数组中的值

java电子邮件提取正则表达式?

javascript - 忽略单词并删除区分大小写和空格以匹配

regex - 使用模式 Angular 2 进行输入验证

php - 如何使用 RegEx 匹配方括号文字?

regex - Scala 中的惯用正则表达式匹配

javascript - 如何解析 javascript 字符串并将其转换为正确的日期格式

javascript - 使用 Google Maps API 在 onclick 上启用滚轮缩放 map

javascript - 创建作为函数参数给出的数组联合