regex-alternation相关内容

为什么字符类比交替更快?

在一个例子中,使用字符类似乎比交替更快: [abc] vs (a|b|c) 我听说有人推荐它,并通过使用 Time::HiRes 的简单测试验证了它(慢了约 10 倍). 还使用 (?:a|b|c) 以防捕获括号产生差异不会改变结果. 但我不明白为什么.我认为这是因为回溯,但我在每个位置看到它的方式有 3 个字符比较,所以我不确定回溯如何影响交替.这是实现的交替性质的结果吗? 解决方 ..

如何正则表达式字符串

是否可以使用正则表达式进行检查: 完整的字符串是数字AND 第一个字符是 7 或 8 然后字符串的完整长度必须是 11 OR 第一个字符是 1,那么字符串的完整长度必须是 10 OR 第一个字符是 0 然后是字符串的完整长度必须是 18 AND 字符 8 必须是 8 或 7 OR 字符 9必须是 1 我希望你能明白我的意思.希望这些例子能帮助你理解我的意思. 这是我的解决方 ..
发布时间:2021-07-06 20:48:42 其他开发

正则表达式交替顺序

我设置了一个复杂的正则表达式来从一页文本中提取数据.出于某种原因,交替的顺序不是我所期望的.一个简单的例子是: ((13th|(Executive |Residential)|((\w+) ){1,3})Floor) 简单地说,我想要么得到一个楼层号,一个已知的命名楼层,作为备份,我捕获 1-3 个未知单词,然后是 floor 以备以后查看(我实际上使用了一个组名确定这一点,但不想混淆问题) ..
发布时间:2021-07-06 19:49:16 其他开发

为什么不交替匹配更长的令牌?

我正在使用ruby 2.1,但可以在rubular网站上复制相同的内容. 如果这是我的字符串: 儘管中國婦幼衛生監測辦公室制定的 我使用此表达式进行正则表达式匹配: (中國婦幼衛生監測辦公室制定|管中) 我希望获得更长的令牌作为匹配项. 中國婦幼衛生監測辦公室制定 相反,我得到了第二轮比赛. 据我所知,如果不使用中文字符,它确实可以正常工作. 如果这 ..
发布时间:2020-07-29 19:10:45 其他开发

为什么角色类比交替类要快?

在类似这样的示例中,使用字符类似乎比替换更快: [abc]与(a|b|c) 我听说过有人建议使用它,并通过Time::HiRes进行了简单测试,我对其进行了验证(速度要慢10倍左右). 如果捕获括号产生差异,也可以使用(?:a|b|c),而不会改变结果. 但是我不明白为什么.我认为这是因为回溯,但是我在每个位置看到它的方式都有3个字符的比较,所以我不确定回溯如何影响交替.是实现的交替性质的 ..

正则表达式操作的优先级

我写了一些java代码将字符串拆分为字符串数组。首先,我使用正则表达式模式“\\,\\,| \\,”拆分该字符串,然后使用模式 “\\,| \\,\\,”。为什么第一个输出和第二个输出之间有区别? public class Test2 { public static void main(String [] args){ String regex1 =“\\,\\,| \\,”; ..
发布时间:2018-12-24 11:45:53 Java开发

Java正则表达式交替运算符“|”行为似乎破碎了

尝试为罗马数字编写正则表达式匹配器。在sed中(我认为它被认为是正则表达式的“标准”),如果你有多个由交替运算符分隔的选项,它将匹配最长的。即,“I | II | III | IV”将匹配“IV”代表“IV”和“III”代表“III” 在Java中,相同的模式匹配“I”表示“IV”,“I”表示“III”。从左到右,交替匹配之间的Java选择;也就是说,因为“I”出现在正则表达式中的“III” ..
发布时间:2018-12-05 19:56:53 Java开发