用php帮我写成一个函数
时间: 2024-02-15 22:03:00 浏览: 97
php大小写转换函数(strtolower、strtoupper)用法介绍
好的,下面是一个可以匹配保留字母数字汉字的 PHP 函数:
```php
function matchText($text) {
$pattern = '/[\w\x{4e00}-\x{9fa5}]+/u';
preg_match_all($pattern, $text, $matches);
return $matches[0];
}
```
解释一下:
- `\w`:表示匹配任意一个字母或数字,等价于`[a-zA-Z0-9]`。
- `\x{4e00}-\x{9fa5}`:表示匹配所有汉字,即Unicode编码中的中文字符范围。
- `/u`:表示开启 UTF-8 编码模式。
- `preg_match_all()`:用于在字符串中搜索所有匹配的正则表达式,返回一个包含所有匹配项的数组。
使用示例:
```php
$text = "Hello, 你好,1234!";
$matches = matchText($text);
print_r($matches);
```
输出结果为:`Array ( [0] => Hello [1] => 你好 [2] => 1234 )`
注意:这个函数只会返回匹配到的结果,并不会过滤掉非保留字母数字汉字的字符。如果你需要过滤掉非保留字母数字汉字的字符,可以在匹配之前使用 `preg_replace()` 函数先过滤掉非保留字母数字汉字的字符。
阅读全文