包含一个集合的1到3个成员但其中一个成员不能单独存在的正则表达式
Regular Expression that contains 1 to 3 members of a set but one of those members cannot be by itself
这是我当前的正则表达式:
(['d'*]{1,3}[A-Z'*]{0,3})
我的问题是第一部分['d'*]{1,3}
,我需要它最多匹配3个数字和至少一个数字,我也需要接受通配符输入-但通配符(*)不能独立,这是目前在某些情况下允许的。
所以我需要匹配的第一部分:
123
12*
*23
1*
*2
1*3
但不仅仅是:
*
使用正向环视断言。
^(?!'*+$)['d'*]{1,3}[A-Z'*]{0,3}$
(?!'*+$)
否定前瞻,它断言要匹配的字符串不会只包含*
的s。
或
^(?=.*'d)['d'*]{1,3}[A-Z'*]{0,3}$
(?=.*'d)
正向前瞻,它断言要匹配的字符串必须包含至少一个数字字符。
演示
您可以这样做:
((['d'*]{2,3}|'d)[A-Z'*]{0,3})
一种基本方法:(我假设只允许一个*
):
((?:'d(?:['d*]?'d?|'d'*?)|'*'d'd?)[A-Z*]{0,3})
请注意,此模式必须锚定到某个对象。
相关文章:
- 为什么可以't我使用成员方法初始化一个实例
- 包含一个集合的1到3个成员但其中一个成员不能单独存在的正则表达式
- 我需要使用什么语法来向一个对象的成员添加一个临时数组,该成员等同于一个字符串的通用列表
- 为什么在访问一个新对象的成员之前将其括在括号中
- 影响类的所有成员而不是一个元素事件的插件正在发生
- 角度范围变量中的数组只有一个成员
- 乘以数组成员得到一个新数组
- 我应该如何对具有相同原型的另一个对象的“私有”成员进行操作
- 使用经典继承,在 JavaScript 中使用“类级”/成员变量是一个好主意还是坏主意
- javascript将一个对象添加为另一个对象的成员
- 当其中一个类成员悬停时,突出显示所有类
- javascript中的闭包与c++中的类实例(它有一个私有成员和一个公共方法)相当吗
- 在coffeescript类中是否可以有一个同名的静态函数和成员函数
- 从根JSAPI对象(由prepscript创建)调用另一个JSAPI对象的类成员
- 根据成员值从JSON结果中选择一个成员
- 在javascript中只允许一个类成员的实例
- 创建一个不使用实例id的私有成员
- 使一个外部脚本对qooxdoo Object的所有成员可用
- 为什么必须扩展一个对象才能删除它的成员?
- 如何让javascript对象的一个成员引用同一对象的另一个成员