use*_*875 5 php regex char preg-replace preg-match
我想检查用户是否输入了接近有效名称的内容.所以,如果输入类似的内容gbcvcvrt,我想验证它并将其标记为不是真名.类似的东西theg+vowel应该被验证为正确的名称.
在任何长度的字符串上,代码应该检测四个连续的非元音字母表.我不希望任何人的名字顺便说一下
考虑
$String = 'therhythm';
Run Code Online (Sandbox Code Playgroud)
我们无法检查前四个字符,我们必须遍历整个字符串并检查四个连续的四个非元音字母表,无论它们位于字符串的哪个位置.这样我们就可以验证$ String是无效的,即使前五个字符会验证它,如果我们检查前四个字母表.
根据您的最新编辑:您可以为此使用以下正则表达式:
^(?!.*?[^aeiou]{5})(?!.*?[aeiou]{3})[a-z]*$
Run Code Online (Sandbox Code Playgroud)
分解一下:
[^aeiou]=> 匹配除元音以外的任何内容(?!.*?[^aeiou]{5})=> 负向前视以确保不存在 5 个连续辅音的情况(?!.*?[aeiou]{3})=> 确保不存在 3 个连续元音的情况[a-z]*=> 确保输入中只有字母| 归档时间: |
|
| 查看次数: |
1438 次 |
| 最近记录: |