Maison > développement back-end > tutoriel php > PHP有哪个函数可以移除文本两边所有字符?(所有)

PHP有哪个函数可以移除文本两边所有字符?(所有)

WBOY
Libérer: 2023-03-02 08:32:01
original
1246 Les gens l'ont consulté

trim是移除字符串两侧的空白字符或其他预定义字符。
如果指定第2个参数(需要移除的符号),那是否可以移除多个?
但是现在又不确定会输入哪种符号,比如问号、点、顿号、感叹号,总不可能把所有符号都打一遍吧?
所以请问有什么函数可以处理字符串两边所有的符号?

回复内容:

trim是移除字符串两侧的空白字符或其他预定义字符。
如果指定第2个参数(需要移除的符号),那是否可以移除多个?
但是现在又不确定会输入哪种符号,比如问号、点、顿号、感叹号,总不可能把所有符号都打一遍吧?
所以请问有什么函数可以处理字符串两边所有的符号?

可以用preg_replace,替换不需要的字符为空。

<code>echo preg_replace('/[!:@#]/', '', '@thi:s! test#');

###输出
this test</code>
Copier après la connexion

这个不单是首尾,所有位置的都会删除,如果需要的话,需要改下正则。

可否使用正则表达式匹配首尾字符,将匹配内容和次数参数化?

<code>1.正则匹配处理
2.生成这个字符串的时候就不要这些字符</code>
Copier après la connexion

使用正则是最好的方法,可以好好看一下,w可以匹配所有的字类字符,从而排除掉特殊符号

你可以换一种思路 限制输入类型 只允许输入数字字母下划线

<code class="code">
        preg_match('/(\w+){6,12}/',$input_string,$matches);
</code>
Copier après la connexion

既然你不确定用户输入,你需要删除哪些东西。那么你确定要的东西肯定是确定的,所以不要使用黑名单制,考虑白名单比较简单。

就是你要啥,就只允许输入啥,其他都不通过~

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal