问题标签 [pcre]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 正则表达式反向引用
具有以下正则表达式:
它匹配a5a
,有什么办法让它也匹配a5b
,a5c
等等a5d
?
编辑:好的,我知道我可以使用([a-z])([0-9])([a-z])
但我有一个非常长且复杂的正则表达式(匹配sub-sub-sub-...-domains或匹配 IPv4 地址),这将真正受益于上述行为. 这是否可以通过反向引用或其他任何方式实现?
匿名。答案是我需要的,但似乎是错误的。
php - 正则表达式:\w - UTF-8 中的“_”+“-”
我需要一个匹配 UTF-8 字母和数字的正则表达式,破折号 ( -
) 但不匹配下划线 ( _
),我尝试了这些愚蠢的尝试但没有成功:
([\w-^_])+
([\w^_]-?)+
(\w[^_]-?)+
是的\w
简写[A-Za-z0-9_]
,但如果我u
设置了修饰符,它也匹配 UTF-8 字符。
谁能帮我解决这个问题?
regex - PCRE 正则表达式到 sed 正则表达式
首先对我糟糕的英语感到抱歉。我是德国人。
下面给出的代码在 PHP 中运行良好:
现在 T 需要相同的sed
。我认为应该是:
但这给了我这个错误:
sed: -e 表达式 #1, char 36: 's' 命令的 RHS 上的无效引用 \1
php - PHP PCRE(正则表达式)不支持 UTF-8?
我正在尝试在我的网站上运行正则表达式,并且收到以下回复:
编译失败:在偏移量 1 处未编译对 \P、\p 和 \X 的支持
在谷歌搜索了一下之后,我发现我的服务器上的 PCRE 显然没有启用 UTF8,因此导致了问题。当我使用 pcretest -CI SSH 时
PCRE 版本 6.6 2006 年 2 月 6 日
编译时支持 UTF-8 不支持 Unicode 属性 换行符为 LF 内部链接大小 = 2 POSIX malloc 阈值 = 10
默认匹配限制 = 10000000
默认递归深度限制 = 10000000 匹配递归使用堆栈
当我执行 yum update pcre 时,它告诉我没有任何要更新的内容。
人们告诉我我可以打开 UTF-8 支持...帮助?
我是菜鸟。
php - 如何将重音字符与 PHP preg 匹配?
我想让我的用户不仅可以填写字母和数字,还可以填写“á”、“é”等“特殊”字母。但是,我不希望他们能够使用符号如“!”、“@”、“%”等。
有没有办法编写一个正则表达式来完成这个?(最好不要指定每个特殊字母。)
我现在有:
php - PHP regexp 模式中需要额外的反斜杠
在测试另一个用户问题的答案时,我发现了一些我不明白的东西。问题是\t
\n
\r
用一个空格替换字符串中的所有文字字符。
现在,我尝试的第一个模式是:
令人惊讶的是没有用。我在 Perl 中尝试了相同的模式并且效果很好。经过反复试验,我发现 PHP 需要 3 或 4 个反斜杠来匹配该模式,如下所示:
或者
这些模式——令我惊讶的是——都有效。为什么需要这些额外的反斜杠?
php - preg_match_all (PHP) 中的 UTF-8 字符
我有preg_match_all('/[aäeëioöuáéíóú]/u', $in, $out, PREG_OFFSET_CAPTURE);
如果$in = 'hëllo'
$out
是:
的位置o
应该是4。我已经在网上阅读过这个问题(ë
被计为2)。有解决方案吗?我见过mb_substr
类似的,但是有这样的东西preg_match_all
吗?
有点相关:它们相当于preg_match_all
Python 吗?(返回匹配数组及其在字符串中的位置)
php - 正则表达式“/^something/”行为
在某些晦涩的情况下,像“/^match/”这样的正则表达式以完全相反的方式工作,匹配“其他东西”的行,修复它的唯一方法是将整个正则表达式放在大括号内......“/ ^(match)/",为什么会这样?