pcre相关内容
我有这个字符串: metadata=1.2 name=stone:supershare UUID=eff4e7bc:47aea5cf:0f0560f0:2de38475 我希望从中提取键值对:=. /(\w+)=(.+?)\s/g 正如预期的那样,由于后面没有空格,因此不会返回 UUID 对: [“元数据=1.2",“名称=石头:超级共享"],["元数据",“名称"],["1.2",“石
..
我正在尝试使用 PCRE2 方言从 HTML 文本中获取所有出现的单词“apple"的正则表达式.但不包括当苹果这个词是链接的一部分. 我是 Regex 的初学者,可能我犯了一个很简单的错误. \bapple\b 因此,以下文本必须与第一次匹配,但不能与第二次和第三次匹配. Lorem ipsum apple sat amet, consectetur 我做错了什么? 解决方案
..
我只想匹配 [a-z] 除了字母 a,e,i,o,u 使用否定集[^aeiou]* 我可以匹配除a,e,i,o,u 之外的所有内容,但是如何限制我的所有内容 到 [az]? 这可以使用 XML Schema、XPath、.NET (2.0+) 和 JGsoft regex 风格中的字符类减法 ([az-[aeiou]]) 轻松完成,但是我怎么做在 PCRE 中做吗? 解决方案
..
我有以下字符串: _name = aVlTcWRjVG1YeDhucWdEbVFrN3pSOHZ5QTRjOEJZZmZUZXNIYW1PV2RGOWYrczBhVWRmdVJTMUxYazVBOE8zQ3JNMmNVKzJLM2JJTzFON3FiLzFHUE0xY0pkdz09LS1jbkkwaWoxUUl3YVhMMkhtZHpaOW13PT0 “%" 3D - 57356371d167f
..
这本来是我想问的问题,但在研究问题的细节时,我找到了解决方案,并认为其他人可能会感兴趣. 在 Apache 中,完整的请求用双引号括起来,里面的任何引号总是用反斜杠转义: 1.2.3.4 - - [15/Apr/2005:20:35:37 +0200] "GET/\" foo=bat\" HTTP/1.0" 400 299 "-" "-" "-" 我正在尝试构建一个匹配所有不同字段的正则
..
由于 pandoc-citeproc 和 latex 之间的转换,我想替换它 [@Fotheringham1981] 有了这个 \cite{Fotheringham1981}. 下面的可重现示例说明了单独处理每个括号的问题. x 看到类似的问题已解决 C#,但不使用 R 的 perly 正则表达式 - 有什么想法吗? 编辑: 它应该能够处理长文档,例如
..
是否可以构建一个 PCRE 风格的正则表达式,只匹配列表中的每个字母一次? 例如,如果您有字母“lrsa"并且您尝试根据以下内容匹配单词列表: ^[lrsa]*m[lrsa]*$ 您将匹配“lams"(有效),但也要匹配“lamas"(对我们来说无效,因为您只有一个“a").如果你的字母集是“lrsaa",你会想要匹配“喇嘛". 这可以用正则表达式实现,还是应该以编程方式处理?
..
给定以下正则表达式: - alice@[a-z]+\.[a-z]+- [a-z]+@[a-z]+\.[a-z]+- .* 字符串 alice@myprovider.com 显然会匹配所有三个正则表达式.在我正在开发的应用程序中,我们只对“最具体"的匹配感兴趣.在这种情况下,这显然是第一个. 不幸的是,似乎没有办法做到这一点.我们正在使用 PCRE,我没有找到方法来做到这一点,而且在互联网上
..
我正在阅读 这个问题,看到有几个人说递归正则表达式严格来说不是正则表达式. 这是为什么? 解决方案 “严格"正则表达式描述了正则语言.但是许多特性,例如在表达式本身中使用反向引用或递归,都可以用来编写接受非正则语言的正则表达式. 例如描述的语言 (a+)b+\1 不是常规的,因为您不能强制 a 在 b 之前和之后出现相同的次数.至少不是常规语言.对于上下文无关甚至上下文敏感
..
在 对最近问题的回答,我设计了几个聪明的小正则表达式(应提问者的要求)来匹配字符串开头或结尾的子字符串.然而,当在 Regex101 上运行时,我注意到不同的模式有不同的步数(表明正则表达式引擎必须为一个和另一个做更多的工作).然而,在我看来,没有直观的理由认为应该如此. 三种模式如下: 有趣的条件:/(^)?!next(?(1)|$)/ (演示 - 86 个步骤) 经典替代:^!n
..
我正在尝试采用 PCRE 正则表达式并在 SED 中使用它,但我遇到了一些问题.请注意,这个问题代表了一个更大的问题(如何将 PCRE regex 转换为与 SED 一起使用),因此问题不仅仅是关于下面的示例,而是关于如何在 SED regex 中整体使用 PCRE regex. 此示例从一行中提取电子邮件地址,并将其替换为“[emailaddr]". echo "我的邮箱是 abc@ex
..
我在 R 中的某些项目中使用 grep(使用 perl=TRUE 标志),并且在我的一生中我无法弄清楚为什么 R 不断抛出错误.我的查询如下: d$SomeColumn[grep("(?ix)\w* 然而,R 抛出以下错误: Error: '\w' is an unrecognized escape in the string starting at ""
..
我对 PCRE(Perl 兼容正则表达式)的强大功能很感兴趣,并想知道它们是否有可能成为所有主要语言中的一种事实上的方法(我对 Java 感兴趣).如有必要,我准备使用图书馆. 我也无法在 SO 中找到描述 PCRE 优缺点的好页面,因此如果不存在,将其包含在答案中可能会很有用 编辑我对 Java 1.6 正则表达式以外的功能感兴趣,特别是命名捕获组 解决方案 似乎更多主流语言
..
使用 PCRE,您如何构建仅在未找到字符串时才匹配的表达式. 如果我使用的是 grep(我不是),我会想要 -v 选项. 一个更具体的例子:我希望我的正则表达式匹配当字符串 foo 在字符串中 not 时.所以它会匹配 bar 而不是 foobar. 解决方案 好的,我已经根据您提出的解决方案改进了我的正则表达式(它错误地匹配了以“test"开头的字符串). ^((?!foo
..
我正在阅读 PCRE 文档,它指的是 占有量词,但没有明确或具体地定义它们.我知道贪婪量词是什么,我知道什么是惰性量词.但占有欲? PCRE 手册页 在使用该术语而未定义时似乎在作弊.手册页特别指出,术语 占有量词 最初在 弗里德尔的书.好吧,那太好了,但我没有 Friedl 的书,在阅读手册页时,在字里行间,我无法弄清楚所有格量词与贪婪量词的区别. ?= 零或一,贪婪 ??= 零或
..
运行 uwsgi 时,我收到以下消息: !!!没有内部路由支持,用pcre支持重建!!! 我已经使用以下命令安装了 pcre(我认为): sudo apt-get install libpcre3 libpcre3-dev 如果我需要重新安装 uwsgi 并激活 pcre,为什么即使在我安装了 pcre 包后仍然收到此消息,我该怎么做? 此外,内部路由重要吗? 我认为是这样,否
..
我安装了 REGEX 支持 apt-get install sqlite3 sqlite3-pcre 现在我可以在 bash 控制台上的查询中使用 REGEX,例如 DB="somedb.db"REGEX_EXTENSION="SELECT load_extension('/usr/lib/sqlite3/pcre.so');"sqlite3 $DB "$REGEX_EXTENSION se
..
我一直觉得你不能在零宽度断言(Perl Compatible Regular Expressions [PCRE])中使用重复量词.但是,最近我发现您可以在前瞻断言中使用它们. PCRE 正则表达式引擎在使用零宽度后视搜索时如何工作,从而阻止使用重复量词? 这是 R 中 PCRE 的一个简单示例: # 我们的字符串x
..
有效的 XML 字符列表是众所周知的,正如其规范所定义的: #x9 |#xA |#xD |[#x20-#xD7FF] |[#xE000-#xFFFD] |[#x10000-#x10FFFF] 我的问题是,是否可以通过使用 Unicode 通用类别,在不实际硬编码代码点的情况下为此(或其逆)制作 PCRE 正则表达式.反义词可能类似于 [\p{Cc}\p{Cs}\p{Cn}],除了不正确地覆盖换
..
例如,下面的正则表达式会导致失败报告lookbehind assertion is not fixed length: #(?
..