javascript - 对于逗号分隔

标签 javascript regex

我是 RegEx 和 JavaScript 的新手,我想知道是否有人知道用于检测输入字段是否包含以下格式类型的 RegEx 是什么:

  • 至少一个可以包含空格的字母数字标签(例如“Test Tag”而不是“Test@Tag”)

  • 每个标签用一个逗号分隔(例如“Cars, Vehicle, Large Dog, Bed”,但不是“Cars, Vehicle, Tiger”)

我的意思的一个例子是,这些将是有效标签:

boy, man,girl, woman,tyrannosaurus rex, lion

这些都是无效标签:

hat, cat, rat, c3po, @gmail

因为“@gmail”中有无效字符。

只要字符是字母数字,它也应该能够只接受一个标签。

最佳答案

假设您想要允许 _ 而不允许在开头或结尾有空格,这将是最短的解决方案:

/^\w(\s*,?\s*\w)*$/

在末尾引入空格:

/^\s*\w(\s*,?\s*\w)*\s*$/

从允许的字符中删除 _:

/^\s*[a-z0-9](\s*,?\s*[a-z0-9])*\s*$/

这是我最初发布的暴力正则表达式。它将您的要求转换为正则表达式语法。我想把它留在这里供引用。

/^\s*([a-z0-9]+(\s[a-z0-9]+)*)(\s*,\s*([a-z0-9]+(\s[a-z0-9]+)*))*\s*$/

关于javascript - 对于逗号分隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4316735/

相关文章:

javascript - react /归零 : Wait for reducer to get props

php - 了解 preg_match_all() 函数调用中的模式

JavaScript RegEx - 前 2 个字符字母,其余数字或只是数字

用该字符串的一部分替换 tibble 中的字符串

MySQL:正则表达式和通配符

java - Java中提取子字符串

javascript - 在 three.js 中将面数组添加到 BufferGeometry

javascript - 数组中的 $pull 对象,以及另一个数组中的 $pull 引用

javascript - jquery 数据表过滤行

javascript - Safari WebDriver setTimeout 使用 Protractor 退出