Home  >  Article  >  Web Front-end  >  How to block selected keywords using regular expressions

How to block selected keywords using regular expressions

php中世界最好的语言
php中世界最好的语言Original
2018-03-29 13:44:112466browse

This time I will show you how to use regular expressionsto block selected keywords and what are the precautionsfor using regular expressions to block selected keywords. Here is the actual combat Let’s take a look at the case.

[Question]Keyword blocking is a must-have function for social software. Of course, it is generally done in the middle and later stages of the product; different products have different regulations, and it depends on the product. It’s okay to go through operations

[Method]We look at this problem from a technical perspective. To achieve a function, the latter means to achieve a requirement. The methods are diverse, and the key points are It is to find the one that is suitable for our current products; for example: we can process data on the back end and then pass it to the front end; we can also process data on the front end; what we are talking about here is the JS processing method on the front end and the PHP processing method on the back end

【JS method】

// 进行屏蔽的文字
var str = '小丽、小明和小红是校长的学生;在这个小家庭里面,校长就是我们的老师!';
// 关键字组,这个可以在前端进行定义,也可以来自后台
var arr = ['小丽','小明','小红','家庭','校长'];
var res = str.replace(new RegExp(arr.join('|'),'img'),'*');
console.log(res);
// *、*和*是*的学生;在这个小*里面,*就是我们的老师!

【PHP method】

// 进行屏蔽的文字
$str = '小丽、小明和小红是校长的学生;在这个小家庭里面,校长就是我们的老师!';
// 关键字组
$arr = ['小丽','小明','小红','家庭','校长'];
echo preg_replace('/'.join($arr,'|').'/','*',$str);
// *、*和*是*的学生;在这个小*里面,*就是我们的老师!

【Summary】 Different is the method, the same is the idea;

[Extension] We are not only used to filter keywords, we usually use trim to filter the spaces before and after when submitting data. In fact, when we When we are familiar with regular expressions, we completely use regular expressions to filter out the spaces entered by the user, and we can use this to filter out spaces at any position; if we expand, this may be the reason why names cannot contain spaces. Of course, the real reason is Due to the limitation of naming of languagestring, spaces are not filtered out. The idea used here is that remembering the knowledge you have learned across fields is conducive to memory and learning; here it only means that the individual is at this moment. Insights

# I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!

Recommended reading:

Using Linux grep and regular expressions

Regular expressions match URL, phone number, mobile phone , Email method

JS regular replace search keyword highlighting effect

The above is the detailed content of How to block selected keywords using regular expressions. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn