加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 从已清理的标签创建数组

发布时间:2020-12-13 17:42:48 所属栏目:PHP教程 来源:网络整理
导读:在我的网站上,我让用户发送这样的标签: tag tagtwo anothertag 我只想让它们使用单??个空格和字母,所以我想删除数字,破折号,双空格等.所以一个无效的字符串将是: tag tag2 another-tag 我有以下代码来执行此操作,但我不知道正确的正则表达式使用. $tags =
在我的网站上,我让用户发送这样的标签:

tag tagtwo anothertag

我只想让它们使用单??个空格和字母,所以我想删除数字,破折号,双空格等.所以一个无效的字符串将是:

tag       tag2 another-tag

我有以下代码来执行此操作,但我不知道正确的正则表达式使用.

$tags = strtolower($_POST['imgTags']);
$tags = preg_replace("/regex/","",$tags);
$tagArray = explode(" ",$tags);

这样做的正确regEx是什么?
另外,我可能想用e和o替换é和?.

解决方法

这将删除除字母和空格之外的任何内容:

$tags = preg_replace("/[^a-z ]/i",$tags);

然后这将折叠连续的空格:

$tags = preg_replace("/ {2,}/"," ",$tags);

如果您想允许其他类型的空白字符,但也要用单个空格替换它们,请尝试以下方法:

$tags = preg_replace("/[^a-zs]/i",$tags);
$tags = preg_replace("/s+/",$tags);

关于你的最后一句话:没有通用的方法.您必须添加特定规则.但是,preg_replace_callback可能会帮助您确定未修改的字母.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读