正则表达式 – 正则表达式Postive Lookahead子串

前端之家收集整理的这篇文章主要介绍了正则表达式 – 正则表达式Postive Lookahead子串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我对正则表达式相当新,我越来越多地使用它们,我越喜欢它们.我正在处理必须满足以下条件的正则表达式:

>必须以Alpha字符开头
>在接下来的三个字符中,至少有一个必须是Alpha字符.
>前四个字符后的任何内容都是自动匹配.

我目前有以下正则表达式:^ [a-zA-Z](?=.* [a-zA-Z]).{1}.* $

我遇到的问题是我的正向前瞻(?=.* [a-zA-Z]).{1}不限制在alpha字符后面的下三个字符.

我觉得好像我在这里错过了一个概念.我在这个表达中错过了什么?

谢谢大家.

解决方法

前瞻中的.*就是这么做的.你应该在这里限制范围

^[a-zA-Z](?=.{0,2}[a-zA-Z]).{1}.*$

编辑:如果你想确保字符串中至少有4个字符,你可以使用另一个这样的前瞻:

^[a-zA-Z](?=.{3})(?=.{0,2}[a-zA-Z]).{1}.*$

猜你在找的正则表达式相关文章