I need some easy (without mb_* and things like that) to go around this issue.
I've tried something like
preg_match_all('#[a-ząśćłóżźń]{3,}#', $text, $matches);
but it doesn't work.
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
preg_match_all()和UTF8字符问题 - 最简单的方法
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
2条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
dsag14654 2011-08-03 08:42关注Try...
preg_match_all('#[a-z\x{0105}\x{015B}\x{0107}\x{0142}\x{00F3}\x{017C}\x{017A}\x{0144}]{3,}#uis', $text, $matches);
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2010-05-28 22:56回答 1 已采纳 Try the /u pattern modifier to let the PCRE engine know you're using UTF-8 patterns: This modi
- 2016-02-25 15:13回答 1 已采纳 Your regexp has two problems. First, there are other numbers in the string before the number of c
- 2017-02-19 20:38回答 1 已采纳 stripos() is not multibyte compatible. Instead you should use mb_stripos() which should work bette
- 2020-12-17 06:31$utf8_length = strlen(preg_replace('/^[\x00-\x7F]*$/u', '', $str)); ``` 总的来说,了解并熟练使用这些修饰符对于编写高效的PHP正则表达式非常重要,它们可以根据不同的需求调整匹配规则,以适应各种复杂的文本...
- 2011-02-21 20:55回答 4 已采纳 \w will give you word characters (letters, digits, and underscores), which is probably what you're
- 2013-09-29 04:28回答 1 已采纳 Try using the regex: ~^(?<tz_utf>(?:[)]+|[^-]+)+)\s+-\s+(?<tz>[^:]+)\s+:\s+(?<
- 2013-07-31 09:22回答 2 已采纳 That entirely depends on what you want to do. The core strlen and similar functions work on bytes.
- 2020-10-26 00:14在本文中,我们将探讨如何在数据采集后使用`preg_match_all`进行编码转换和正则匹配。`preg_match_all`是PHP中的一个强大函数,用于在字符串中执行全局正则表达式匹配。以下是关于这个主题的详细讲解: 1. **使用...
- 2019-07-07 08:27回答 2 已采纳 My guess is that this expression, (?!.*,$)([\p{L}\p{N}]+=[\p{L}\p{N}]+),? might work, which her
- 2012-01-19 10:10回答 1 已采纳 First of all, the strings you show are hexadecimal representations, not the actual UCS-2 or UTF-8
- 2016-06-07 00:16回答 1 已采纳 To match a chunk of Unicode letters, you can use '/\p{L}+/u' The \p{L} matches any Unicode lett
- 2020-08-19 03:45夏已微凉、的博客 是特殊字符,所以要加上转义字符 \ 3、匹配量词中的一个【桶,盒,对,只,根,条】 [桶|盒|对|只|根|条] 4、匹配空格0个或多个 \s* 或者 \s{0,} 5、针对汉字匹配 /u /u 表示按unicode(utf-8)匹配(主要针对多字节...
- 2020-10-20 09:59`u`修饰符表示使用UTF-8编码进行匹配,使得`preg_match`能够识别Unicode字符。 其中,`[\S\b]`是一个字符类表达式,`\S`匹配任何非空白字符,`\b`通常用于匹配单词的边界。在这个表达式中,`\b`并不具备实际的边界...
- 2021-03-26 03:59Kang He的博客 正则表达式在 PHP 中的应用在 PHP 应用中,正则表达式主要用于:•正则匹配:根据正则表达式匹配相应的内容•正则替换:根据正则表达式匹配内容并替换•正则分割:根据正则表达式分割字符串在 PHP 中有两类正则...
- 力噜噜噜力的博客 斯蒂芬大帝我建议使用替代正则表达式,使用子组单独捕获参数的名称和值:function getUrlParams(url) { var re = /(?:\?|&(?:amp;)?)([^=]+)(?:=?([^]*))/g, match, params = {}, decode = function (s) {return...
- 2020-10-26 19:06使用“u”修饰符可以让正则表达式以UTF-8编码来处理字符串,从而可以正确地匹配多字节字符。 通过示例代码演示了如何使用“u”修饰符: ```php <?php var_dump(preg_match("/[\S\b]{2,32}/u", 'ج')); // 正确匹配...
- 2023-05-30 13:24qikexun的博客 preg_match_all() 函数可以返回 pattern 的匹配次数(可能是 0),如果发生错误则返回 FALSE。如果 $subject 是一个数组,preg_replace() 函数会返回一个数组,其他情况下返回一个字符串。join() 函数是 implode() ...
- 2021-04-12 12:14鸭梨梨呐的博客 作用: 分割, 匹配, 查找, 替换例如: 验证邮箱地址格式, 手机号码格式等等php中常用的正则函数:preg_match(mode, string subject, array matches); 更加规范 执行效率越高ereg(mode, string ...
- 2021-04-20 06:45郭之然的博客 发布日期:2009-09-27更新...PHP所使用的preg_match()函数从用户输入字符串获得参数,如果所传送的值为数组而不是字符串就会生成警告,警告消息中包含有当前运行脚本的完整路径。链接:http://marc.info/?l=bugtr...
- 2020-11-19 14:56weixin_39586683的博客 PHP引用变量什么是引用变量?如何定义引用变量?引用意味着用不同的名字访问同一个内容定义引用变量:使用&引用变量的工作原理普通变量的工作原理0,引用变量的工作原理0,注意:1、引用变量一旦定义,此变量永远...
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司