pcre相关内容
我找到了this question有关使用K重置匹配的捕获组的信息(即,不确定该名称是否正确),但它没有回答我的问题。 假设我有以下字符串: ab 以下regexaKb输出如预期的b: 但是,使用regex(aKb)添加捕获组(即$1)时,组$1返回ab而不是a: 给定以下字符串: ab cd 使用regex(aKb)|(cKd)我希望组$1包含b,组$2包含
..
我希望预先解析JSON,并在JSON中将整型和浮点值转换为字符串。此外,JSON中还有一些字符串值。 例如: { "first_name": "sample", "last_name": "lastname", "integer" : 100, "float" : 1555.20 } 我只是使用here中的preg_replace(): ech
..
给定一个类似"/foo/bar/baz/quux"的字符串(将其视为指向一个单一系统上的文件的路径),我如何(如果可能的话)制定一个正则表达式,给出可以说包含文件quux的所有可能路径? 换句话说,在对给定字符串("/foo/bar/baz/quux")运行regexp时,我希望获得AS结果: "/foo/" "/foo/bar/" "/foo/bar/baz/" 我尝试了以
..
我的目标是用一个符号替换一个字符串,该符号重复的字符与该字符串的字符一样多,就像人们可以用\U\1替换大写字母一样,如果我的模式是(*),我用x\q1或{\q1}x替换由x\q1或{\q1}x捕获的字符,因此我将获得与*捕获的字符一样多的x。 这可能吗? 我主要在sub,gsub中思考,但您可以使用stringi,stringr等其他库来回答。 您可以方便地使用perl = TRUE或pe
..
我需要将包含长URL的文本字符串转换为相同的字符串,但带有TinyURL(使用TinyURL API)。例如。转换 blah blah blah http://example.com/news/sport blah blah blah 进入 blah blah blah http://tinyurl.com/yaeocnv blah blah blah 如何做到这一点?
..
我一直在尝试删除这样的粗体字符: 𝐒𝐎𝐍𝐘𝐀 - New song 如您所见,这是一个没有标记的粗体文本。 我试过了,以为这些人物可能是一种表情符号,但我一点运气都没有。 $regex_emoticons = '/[x{1F600}-x{1F64F}]/u'; $clear_string = preg_replace($regex_emoticons, '',
..
给定此PCRE模式: /([^]*[^]*[^]*)/ 和此主题文本: John Stevens 888-555-1212 Peter Wilson 888-555-2424 如何才能使正则表达
..
假设我有以下文本: Yes: [x] Yes: [ x] Yes: [x ] Yes: [ x ] No: [ No: ] 我感兴趣的是捕获[和]的尖括号,x包含在x两侧具有可变水平间隔量的x。我遇到的问题是两个尖括号必须捕获到ID(即$1)相同的组中。 我从使用以下regex的积极前瞻和后视断言的组合开始: [(?=h*x)|(?
..
我要将字符串作为一个完整的单词匹配"~$search~i",它匹配‘35’到‘35-40’。我只想让空格作为单词之间的分隔符。 测试用例: 在以下情况下匹配35: 35-40=>FALSE 3-5=>FALSE 335=>FALSE 350=>FALSE 35=>TRUE 感谢您的答复 推荐答案 您可以使用look-around assertions而不是
..
在PHP中使用PCRE正则表达式时,多行模式(/m)使^和$能够匹配源文本中的行首和行尾(由换行符分隔),以及源文本的开头和结尾。 这似乎在使用 (LF)作为换行分隔符的Linux上运行得很好,但在使用 (CRLF)的Windows上失败。 有没有办法改变PCRE认为的换行符?或者可能允许它以$匹配行尾/字符串的方式匹配CRLF或LF? 示例: $EOL = " ";
..
我知道,PHP PCRE函数将字符串视为字节序列,所以很多站点建议使用/u修饰符来处理输入和正则表达式作为UTF-8。 但是,我真的总是需要这个吗?我的测试表明,当我不使用转义序列或点或类似的东西时,这个标志没有什么不同。 例如 preg_match('/^[da-f]{40}$/', $string);检查字符串是否具有SHA1哈希格式 preg_replace('/[^
..
Python 有一个 range 方法,它允许使用以下内容: >>>范围(1, 6)[1、2、3、4、5] 我正在寻找的是相反的:获取一个数字列表,然后返回开始和结束. >>>魔法([1, 2, 3, 4, 5])[1, 5] # 注意:5,不是 6;这与 `range()` 不同 对于上面的示例来说,这很容易做到,但是是否也可以允许间隙或多个范围,以类似 PCRE 的字符串格式返回范围?
..
我需要对名为 post 的 MySQL 表中名为 message 的列运行正则表达式查找和替换. 我的数据库正在运行 MariaDB 10. 根据 docs,MariaDB 10 有一个新的 REGEXP_REPLACE 函数,旨在完全做到这一点,但我似乎无法弄清楚实际的语法. 它将影响 280,000 行,因此理想情况下还有一种方法可以将其限制为在我测试时一次仅更改一个特定行,
..
..
我有一些通用的日志文件,格式如下: 时间戳事件摘要详细信息账户名:userA更多详情时间戳事件摘要巴兹细节账户名:userBqux 更多详情时间戳等 我想在日志文件中搜索 userB,如果找到,则从前面的时间戳回显到(但不包括)下面的时间戳.可能会有几个事件与我的搜索相匹配.最好在每个匹配项周围回显某种 --- start --- 和 --- end --- . 这对 pcregrep
..
我有 URI 中(德语)特殊字符的问题 并希望尝试使用 RegEx Route 和 PCRE 模式修饰符,用于 UTF-8 u. 'router' =>大批('路线' =>大批(//...'城市' =>大批('类型' =>'正则表达式','选项' =>大批('正则表达式' =>'/catalog/(?[a-zA-Z0-9_-äöüÄÖÜß]*)\/u','默认' =>大批('控制器' =>'目录
..
我在 utf-8 php 文件中有以下 php 代码: var_dump(setlocale(LC_CTYPE, 'de_DE.utf8', 'German_Germany.utf-8', 'de_DE', 'german'));var_dump(mb_internal_encoding());var_dump(mb_internal_encoding('utf-8'));var_dump(mb
..
我正在尝试使用 preg_match. preg_match('/H/u', "\xC2\xA1Hola!", $a_matches, PREG_OFFSET_CAPTURE);回声 $a_matches[0][1]; 这应该打印 1,因为“H"在字符串“¡Hola!"的索引 1 处.但它打印 2.所以它似乎没有将主题视为 UTF8 编码的字符串,即使我正在传递 "u" 修饰符. 我的
..
我正在尝试在我的网站上运行正则表达式,但收到以下响应: 编译失败:支持\P,\p 和 \X 尚未编译偏移量 1 在谷歌上搜索了一下之后,我发现我服务器上的 PCRE 显然没有启用 UTF8,因此导致了问题.当我使用 pcretest -C ssh 时,我得到 PCRE 6.6 版 2006 年 2 月 6 日 编译支持UTF-8 否Unicode 属性支持换行字符为 LF
..
我必须在 Python 中基于 PCRE 解析一些字符串,但我不知道该怎么做. 我想解析的字符串如下: 匹配mysql m/^.\0\0\0\n(4\.[-.\w]+)\0...\0/s p/MySQL/i/$1/ 在这个例子中,我必须得到不同的项目: "m/^.\0\0\0\n(4\.[-.\w]+)\0...\0/s" ;"p/MySQL/" ;“我/$1/" 我发现与 Pyth
..