标签: pcre

[az]是否会匹配PREG/PCRE中的重音字符?

我已经知道\w在PCRE中(特别是PHP的实现)有时可以匹配一些非ASCII字符,具体取决于系统的语言环境,但是呢[a-z]

我不这么认为,但我注意到Drupal的核心文件之一中的这些行(包括/ theme.inc,简化):

// To avoid illegal characters in the class,
// we're removing everything disallowed. We are not using 'a-z' as that might leave
// in certain international characters (e.g. German umlauts).
$body_classes[] = preg_replace('![^abcdefghijklmnopqrstuvwxyz0-9-_]+!s', '', $class);
Run Code Online (Sandbox Code Playgroud)

这是真的吗,还是只是有人[a-z]混淆了\w

php regex ascii pcre

17
推荐指数
3
解决办法
2220
查看次数

Haskell中的PCRE - 什么,在哪里,如何?

我一直在寻找一些关于Haskell正则表达式的文档或教程.HaskellWiki页面上没有有用的信息.它只是给出了一个神秘的信息:

Documentation
Coming soonish.
Run Code Online (Sandbox Code Playgroud)

有一篇简短的博客文章,我发现它非常有用,但它只处理Posix正则表达式,而不是PCRE.

我一直在使用POSIX正则表达式的几个星期,我来,对于我的任务,我需要PCRE的结论.

我的问题是我不知道在Haskell中从哪里开始使用PCRE.我已经下载regex-pcre-builtin了cabal,但我需要一个简单匹配程序例子来帮助我开始.

  • 是否可以实现多行匹配?
  • 我可以用这种格式取回比赛:[(MatchOffset,MatchLength)]
  • 还有哪些其他格式可以让比赛重新开始?

非常感谢您的帮助!

regex pcre haskell

17
推荐指数
4
解决办法
3135
查看次数

XAMPP - MySql - 此版本的PCRE在偏移0处编译时没有UTF支持

我试图在我的电脑上安装一个wordpress网站(它是Mac 10.11),但是我收到了这个错误:

"This version of PCRE is compled without PCRE support at offset 0 from regexp"

这个问题与此查询有关:

DELETE FROM wp_options WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?$'

我已经在Google上搜索了它,甚至在这里,但我发现的一切都没有帮助我解决这个问题.我也尝试重新安装XAMPP,但它仍然是一样的.即使我尝试从我的phpMyAdmin面板执行包含REGEXP的查询,我也遇到了同样的问题.
很多解决方案都是通过使用compile命令来讨论重新编译apache或类似的东西.

任何人都可以帮我解决这个问题吗?
提前致谢

regex mysql xampp macos pcre

17
推荐指数
3
解决办法
1万
查看次数

如何在不同的编程语言中使用相同的正则表达式?

我已经看到了这个问题,而且我从经验中知道,每种语言似乎都支持不同的正则表达方言.我认为这个问题已存在很长时间了,所以有人一定想对此做些什么.

我有一个非常大的项目涉及JavaScript,Ruby和Java,所有这些都必须触及相同的正则表达式.我们选择Java作为我们的"官方"RE解释器,这意味着每当其他两种语言需要评估RE时,他们必须以某种方式将它传递给Java程序,并且这开始增加了很多开销.

如果我可以选择任何 RE方言并至少从所有语言中半原生地调用它,那对我们来说这将是一个巨大的进步.这可能吗?它已经完成了吗?我们查看了PCRE,从技术上讲,它可以通过Java和Ruby的本机绑定来调用它(虽然它让JS在寒冷中离开),但我还没有发现任何人真正这样做.我们一个人吗?

ETA:我没有提到的一个问题是这个系统应用了用户提供的正则表达式.(是的,我知道这是一个安全问题等,但它是供受信任的,归属用户在内部使用的.)我当然建议建立一个"不要这样做"的功能列表,以避免,但我希望这不是最好的解决方案.

javascript ruby java regex pcre

16
推荐指数
1
解决办法
1065
查看次数

为什么/\w +:/和/\S +:/处理回溯不同?

我使用regex101分析了这两个正则表达式.我认为回溯/\S+:/是正确的.但我无法理解这种差异.我错了吗?

regex101.com

regex pcre backtracking

16
推荐指数
2
解决办法
381
查看次数

有人可以向我解释占有量词吗?(常用表达)

我正在阅读PCRE文档,它指的是占有量词,但没有明确或具体地定义它们.我知道贪婪的量词是什么,我知道什么是懒惰的量化器.但占有欲?

PCRE手册页似乎当使用术语而不定义它被欺骗.该手册页特别指出术语占有量词首先在Friedl的书中定义.嗯,这很好,但是我没有Friedl的书,在阅读手册页之间,我无法弄清楚占有量词与贪婪词的区别.

  • ?=零或一,贪心
  • ?? =零或一,懒惰
  • ?+ =零或一,占有欲
  • '+'=一个或多个,贪心
  • +?=一个或多个,懒惰
  • ++ =一个或多个,占有欲

regex pcre

15
推荐指数
1
解决办法
3440
查看次数

替换文本末尾的额外字符

在PHP和Java,我申请/^[^\pL]*|[^\pL]*$/-A-,我得到了*A**.我应用了对称模式并获得了不对称结果!为什么?我想知道为什么它的输出不是*A*

模式说除了字符串末尾的字母之外的所有东西都应该被替换*,它也是贪婪的并且应该一起替换所有非字母的东西.

在RegexBuddy的Alos笔记我得到*A*的就是我的期望.

更新:我简化了问题以集中我的主要关注点.

php java regex pcre

15
推荐指数
2
解决办法
475
查看次数

PHP正则表达式:如何匹配\ r和\n而不使用[\ r \n]?

我已经测试了\v(垂直空白区域)匹配\r\n和它们的组合,但我发现\v它不匹配\r\n.以下是我正在使用的代码..

$string = "
Test
";

if (preg_match("#\v+#", $string )) {
  echo "Matched";
} else {
  echo "Not Matched";
}
Run Code Online (Sandbox Code Playgroud)

更清楚的是,我的问题是,是否有其他替代品可供选择\r\n

php regex pcre newline

15
推荐指数
3
解决办法
1万
查看次数

Swift正则表达式格式?

我熟悉pcre正则表达式,但它们似乎并没有迅速发挥作用.

^([1-9]\d{0,2}(\,\d{3})*|([1-9]\d*))(\.\d{2})?$
Run Code Online (Sandbox Code Playgroud)

验证数字,如1,000,000.00

但是,将此放在我的快速函数中会导致错误.

    extension String {
    func isValidNumber() -> Bool {
        let regex = NSRegularExpression(pattern: "^([1-9]\d{0,2}(\,\d{3})*|([1-9]\d*))(\.\d{2})?$", options: .CaseInsensitive, error: nil)
        return regex?.firstMatchInString(self, options: nil, range: NSMakeRange(0, countElements(self))) != nil
    }
}
Run Code Online (Sandbox Code Playgroud)

"litteral中的转义序列无效"

这当然是因为pcre使用"\"字符,swift解释为逃避(我相信?)

因为我不能只使用我习惯的正则表达式.如何将它们翻译为与Swift代码兼容?

regex pcre ios swift

15
推荐指数
2
解决办法
7591
查看次数

PCRE 和 PCRE2 之间的正则表达式差异

我们正在考虑从 PCRE 迁移到 PCRE2 作为我们的内部正则表达式引擎。只有正则表达式语法本身暴露给我们的用户,因此库 API 差异对我们的使用来说不是问题。但是,我们必须记录任何行为变化。

很多网站都讨论了 API 差异,但我没有发现任何列出正则表达式符号中实际差异的网站。虽然我确实知道这与 PCRE 中的[\w-_]含义相同但在 PCRE2 中无效,但我怀疑还存在其他差异。[\w\-_]

PCRE2 的正则表达式与 PCRE 的正则表达式有何不同?

regex migration pcre

15
推荐指数
1
解决办法
3887
查看次数

标签 统计

pcre ×10

regex ×10

php ×3

java ×2

ascii ×1

backtracking ×1

haskell ×1

ios ×1

javascript ×1

macos ×1

migration ×1

mysql ×1

newline ×1

ruby ×1

swift ×1

xampp ×1