我的任务是创建一个PHP文件,它将检查来自HTML GET的名称,基础如下:
- 可以从a-z小写字母或大写字母
- 小于等于25个字符长度
- 同时添加TM商标作为例外
我不知道我是否会使用REGEX或STRIPOS。我的教授让我用PHP写这个。一些示例场景:
1. AdriaN = allow
2. $tackoverFlow = not allowed
3. StackoverFl0w = allowed
4. ™ Stack Over Flow ™ = Allowed
5. StækOverFlow = not allowed
这是我到目前为止想到的,这可以改进吗?
$pattern = '/[a-zA-Z0-9$™]{1,24}$/';
作为示例,您的内部有一些空格是允许的。所以我建议使用这个regex:
/^[a-zd™][a-zds™]{1,24}(?<!s)$/im
设置m
多行和i
不区分大小写的修饰符
如果教授要求(?<!s)
,回复它是负向后看以确保末尾没有尾随空格。
现场演示