【发布时间】:2011-11-06 18:13:48
【问题描述】:
我是最新的,很高兴来到 Stackoverflow。我关注这个网站很久了。
我有一个输入/文本字段。 (例如“插入您的姓名”)
脚本在用户发送数据时启动以下控件:
1) 控制字段是否为空。
2) 控制字段是否超过允许的最大字符数。
3) 控制字段是否包含错误匹配的 preg_match 正则表达式。 (例如,它包含数字而不仅仅是字母 - 没有符号和重音 -)。
问题是:为什么如果我把这个字符“w/”,脚本不会控制?而且好像是字符串绕过控件?
大家好,如果我迟到了答案,对不起(以及发布的非代码^^)。
现在,谈谈我的问题。我检查了问题仅在我离线工作时才出现(我使用 EasyPhp 5.3.6.1)。否则在线测试的正则表达式是可以的。
这是我用来获取我上面所说的内容的代码:
if (!preg_match('/^[a-zA-Z]+[ ]?[a-zA-Z]+$/', $name)) {
echo "Error";
}
如你所见,这段代码匹配:
- 仅以字母开头(和结尾)的字符串;
- 只有 0 或 1 个空格的字符串(适用于有两个名字的人,即:Anna Maria);
...对吗?!
(如有错误请指正)
谢谢大家!
疣
【问题讨论】:
-
欢迎来到 stackoverflow - 你能发布你的代码吗?没有它就很难回答你的问题。
-
欢迎来到 SO。如果您编辑问题以添加您的 php 代码,包括正则表达式和失败的示例,那么我们可以提供帮助。否则,你的问题不够清楚。
标签: php regex forms validation