我寻找一个正则表达式的字符串包含“一”和“b”,它具有以下两个属性搜索字符串: 1:字符串有偶数个字符 2:字符串可能不包含“AA”具体情况
Q
具体情况
1
A
回答
0
它可与Perl兼容的正则表达式可以轻松完成: ^(ab|bb|(ba(?!a)))*$
基本上它说,字符串必须由ab
,bb
,ba
子以任意顺序混合,但ba
不能按照其他a
字符。
由于所有这些子表达式的长度都是偶数,所以字符串的长度将会更长。 aa
不能出现在一个字符串中,因为它出现的唯一方法是在子字符串baab
中,但正则表达式特别限制ba后面跟着a
。
1
这是可能的标准(旧)的正则表达式:
(ab|bb|(ba)*bb)*(ba)*
1
如何:
/(?=^(?:..)+$)(?!aa)(?=.*a)(?=.*b)/
解释:
/ : delimiter
: control there are an even number of char
(?= : positive lookahead
^ : begining of string
(?: : non capture group
.. : 2 characters
)+ : one or more times
$ : end of string
)
: control there aren't aa
(?! : negative look ahead
aa : aa
)
: control there is at least an a
(?= : positive lookahead
.*a : at least an a
)
: control there is at least a b
(?= : positive lookahead
.*b : at least a b
)
/ : delimiter
相关问题
- 1. 针对具体情况
- 2. $。员额问题jQuery的具体情况
- 3. 具体情况的提示或提示
- 4. 更新表whith的具体情况
- 5. SQL更新查询具体情况
- 6. c#subsonic 2.1:按具体情况
- 7. 有关BCNF分解的具体情况
- 8. 防止屏幕闪烁(具体情况)
- 9. 重启ROWNUMBER根据具体的情况
- 10. 插入到mysql的具体情况
- 11. 拥有上根据具体情况
- 12. 根据具体情况填写清单
- 13. 实体getter不同情况
- 14. ORM模型和DAO在我的具体情况
- 15. 选择记录根据具体的情况从另一个表
- 16. CSS3:高度过渡不工作 - 具体使用情况
- 17. oop:在具体情况下的构成或继承
- 18. 如何根据具体情况检索单行?
- 19. 更新字段顺序根据具体的情况
- 20. 使用CASE的具体情况 - 我如何
- 21. wix:根据具体情况设置多个值
- 22. 导入/导出根据具体的情况
- 23. 转换行分列具体情况在SQL Server
- 24. 月分组,根据具体的情况在SQL
- 25. 在我的具体情况下唯一识别设备
- 26. 我可以搜索/多个.txt文件的具体情况
- 27. 斯卡拉:模式匹配“具体”的情况下
- 28. 休息空间,文本框(具体情况)
- 29. 投影MongoDB中根据具体的情况
- 30. Python的查找和具体情况而定替换/与函数
这几乎是不可能做到这一点与一个正则表达式。 – kirilloid 2012-04-18 09:26:08
你应该可以用3个正则表达式来做到这一点。每个条件一个:P – ArjunShankar 2012-04-18 09:38:54
字符串只包含'a'和'b'还是'abcd'是一个有效的字符串? – Toto 2012-04-18 09:54:38