PHP REGEX: Ignore + and #(PHP REGEX:忽略+和#)
本文介绍了PHP REGEX:忽略+和#的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
下面是我正在做的事情:
我有一个表单,其右侧有一个标题,我只想以A-Z、0-9和空格的形式写入,而对于标题,我想执行相反的操作,这样,如果用户编写了错误的内容,我可以显示问题出在哪里for example: "Invalid Charachter"
但是我被+和#困住了,我想用正则表达式从表单中忽略它们,这样我也可以为它们显示"Invalid character"消息,因为我看到php认为+符号等于空格()或其他什么,但我也需要忽略+和#符号。这是我当前的代码:
preg_match_all("/[^ws]/",$string,$matches);
foreach($matches[0] as $ic){
if(strpos($str,$ic) || $str[0] == $ic){
$fullname_error = "Invalid Character";
}
}
有效字符串:
- 无名氏
- Mary Sue
无效字符串:
- J#ohn Doe
- 无名氏
- John+Doe
- Mar@y+Sue
- !Mary Sue
- Mary Sue!
推荐答案
您可以这样处理无效字符:
$str = 'gum@#+boo';
if (preg_match_all('/[^ws]/u', $str, $matches)) {
echo sprintf(
'<p>Your input <b>%s</b> contains %d invalid character%s: <b>%s</b>.</p>',
htmlspecialchars($str),
count($matches[0]),
count($matches[0]) > 1 ? '' : 's',
implode('</b>, <b>', array_map('htmlspecialchars', array_unique($matches[0])))
);
echo '<p>Please choose a different input value.</p>';
}
这篇关于PHP REGEX:忽略+和#的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:PHP REGEX:忽略+和#
基础教程推荐
猜你喜欢
- 如何在 Laravel 中使用 React Router? 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- 如何替换eregi() 2022-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
