php 求用正则匹配中文以及标点符号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 求用正则匹配中文以及标点符号相关的知识,希望对你有一定的参考价值。
你指的连续,那么就要求是两个以上了:1
$reg ='/[\x80-\xff]2,/';
这个正则是表示匹配两个字节以上的多字节字符(多字节字符通常高位为 1)。 参考技术A preg_match('/[\u4e00-\u9fa5\pP]+/u',text);追问
谢谢!但是好像报错了
preg_match(): Compilation failed: PCRE does not support \L, \l, \Nname, \U, or \u at offset 2
preg_match('/[\x4e00-\x9fa5\pP]+/u',text);
PHP 正则 空字符 / NUL字符
xnn 匹配中ASCII代码十六进制代码为nn的字符。
[x00-x7F] 匹配ASCII值从0-127的字符。
0-127表示单字节字符,也就是:数字,英文字符,半角符号,以及某些控制字符。
正则示例:
<?php $test_str = ‘a‘.chr(0).‘bcdefj‘.chr(0).‘h‘; //ASCII码中十进制 0 对应 十六进制 00 $hex_str = ‘x00‘; $pattern = sprintf(‘/a%s[0-9a-zA-Z]{6}%sh/‘,$hex_str,$hex_str); preg_match_all($pattern,$test_str,$output); var_dump($output); $test_str = ‘a‘.chr(31).‘bcdefj‘.chr(31).‘h‘; //ASCII码中十进制 31 对应 十六进制 1F $hex_str = ‘x1F‘; $pattern = sprintf(‘/a%s[0-9a-zA-Z]{6}%sh/‘,$hex_str,$hex_str); preg_match_all($pattern,$test_str,$output); var_dump($output);
以上是关于php 求用正则匹配中文以及标点符号的主要内容,如果未能解决你的问题,请参考以下文章
PHP:如何匹配一系列 unicode 配对代理表情符号/表情符号?