javascript - 正则表达式以字母开头和结尾,允许逗号和破折号

标签 javascript regex

我有这个正则表达式:

/^[\a-zøåæäöüß][\a-z0-9øåæäöüß]*(?:\-?[\a-z0-9øåæäöüß,]+)*$/i

对于像 "K61-283øÅ,æk-ken,a-sd" 这样的疯狂输入,它工作得很好,但在 "word," 的情况下却失败了(所以,当只有一个逗号时)。

另外 - 我如何限制它应该在每个逗号或短划线之后以字母开头(所以基本上 - 每个单词)?

规则是:以字母开头,以字母数字结尾;允许使用字母数字、破折号和逗号;每个破折号或逗号后面应该有一个字母

最佳答案

您可以使用

/^[a-zøåæäöüß][a-z0-9øåæäöüß]*(?:[-,][a-zøåæäöüß][a-z0-9øåæäöüß]*)*$/i

请参阅regex demo

详细信息:

  • ^ - 字符串开头
  • [a-zøåæäöüß] - 已定义集合中的字母
  • [a-z0-9øåæäöüß]* - 定义集中的 0+ 个数字或字母
  • (?:[-,][a-zøåæäöüß][a-z0-9øåæäöüß]*)* - 零个或多个序列:
    • [-,] - -,
    • [a-zøåæäöüß] - 已定义集合中的字母
    • [a-z0-9øåæäöüß]* - 定义集中的 0+ 个数字或字母
  • $ - 字符串结尾。

关于javascript - 正则表达式以字母开头和结尾,允许逗号和破折号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42205115/

相关文章:

javascript - 从 Html 中提取特定值

javascript - 交错图像和复选框的问题

javascript - 像 Scratch 或 Google AppInventor 之类的东西,但不是针对 JavaScript 或 HTML5 的吗?

javascript - 如何验证 jquery-validation 中的选择框?

javascript - angular-tree-component json 到可接受的格式并动态创建复选框或单选按钮

javascript - 如何根据逗号分割字符串(括号内除外)

c# - 正则表达式 - C# - 获取字符串的不匹配部分

java - 在 Java 中使用正则表达式提取值

regex - 如何检查给定路径是vbscript中的目录或文件?

javascript - 如何通过双击关闭 DateTimePicker