加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式 – 如何将PCRE转换为POSIX RE?

发布时间:2020-12-14 06:28:25 所属栏目:百科 来源:网络整理
导读:这个有趣的问题 Regex to match anything (including the empty string) except a specific given string涉及到如何在MySQL中做一个负面的预测.海报想得到效果 堪萨斯州(?州) 因为MySQL没有实现预先的断言,所以有一些答案是等同的 堪萨斯州($| [^] |($| [^
这个有趣的问题 Regex to match anything (including the empty string) except a specific given string涉及到如何在MySQL中做一个负面的预测.海报想得到效果

堪萨斯州(?州)

因为MySQL没有实现预先的断言,所以有一些答案是等同的

堪萨斯州($| [^] |($| [^ S])| S($| [^ t])| St($| [^ a])| Sta($| [^ t])| Stat | [^ E]))

海报指出,这是一个PITA为潜在的很多表达.

有没有一个脚本/实用程序/模式的PCRE(或其他一些包),将PCRE(如果可能)转换为不使用Perl的snazzy功能的等效正则表达式?我完全知道一些Perl风格的正则表达式不能被称为普通的正则表达式,所以我不会指望这个工具做不可能,当然!

你不想这样做.实际上,将高级功能转化为基本功能并不是一件容易的事情 – 这只是编译器的另一种风格,而编译器的编写者却是非常聪明的人,但是这些奇特功能所解决的大多数事情都是(a)不可能标准正则表达式,因为它们识别非常规语言,所以你必须对它们进行近似,以至于它们可以用于有限长度的文本或(b)可能,但只能使用指数大小的正则表达式.而“指数”则表示“不要去那里”.如果您尝试在实际想要处理的任何内容中使用指数解决方案,那么您将会在OutOfMemory错误和看似无限循环中淹没.

换句话说,放弃所有的希望,你们进入这里.使用正则表达式来做最好的事情总是更好,用其他工具做其他事情.即使像反正正则表达式这样简单的事情也可以用原始的正则表达式与否定运算符组合来解决,而不是由正确的正则表达式逆变器产生的怪异性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读