lookahead相关内容

Javascript 不会使用正则表达式拆分

自从我开始写这个问题以来,我想我已经找到了我遇到的每个问题的答案,但我想我还是会发帖,因为它可能对其他人有用,更多的澄清可能会有所帮助. 我试图将正则表达式与 javascript 函数 split 一起使用.出于某种原因,即使在我调用 match 时找到匹配项,它也没有拆分字符串.我最初认为问题是在我的正则表达式中使用了前瞻.这是一个简化的例子: 不起作用: "aaaaBaaaa" ..
发布时间:2021-12-28 12:11:36 前端开发

正则表达式:是否有 AND 运算符?

显然,您可以使用|(管道?)来表示OR,但是有没有一种方法也可以表示AND? 具体来说,我想匹配包含某个短语的所有内容的文本段落,但没有特定的顺序. 解决方案 使用非消耗正则表达式. 典型的(即 Perl/Java)符号是: (?=expr) 这意味着“匹配 expr 但之后在原始匹配点继续匹配." 您可以根据需要做任意多的这些,这将是一个“和".示例: ..
发布时间:2021-12-02 23:14:27 其他开发

否定前瞻断言在 python 中不起作用

任务: - 给定:图像文件名列表 - 待办事项:创建一个文件名不包含“thumb"一词的新列表 - 即仅针对非缩略图图像(使用 PIL - Python 成像库). 我试过 r".*(?!thumb).*" 但它失败了. 我找到了在正则表达式前添加 ^ 并将 .* 放入负前瞻的解决方案(在 stackoverflow 上):r"^(?!.*thumb).*" 现在可以使用了. ..
发布时间:2021-11-30 11:35:03 Python

只匹配一个模式一次

我有一个字符串 foo-bar-bat.bla 我希望只匹配 foo 我有缺陷的模式同时匹配 foo 和 bar \w+(?=-.*\.bla) 如何丢弃 bar?或者甚至更好,我怎么能在 foo 之后停止匹配? 解决方案 您可以使用以下模式(只要您的字符串始终按照您所说的方式格式化): ^\w+(?=-.*\.bla) 在 Debuggex 上实时编辑 ^ 符号匹 ..
发布时间:2021-07-07 18:32:38 其他开发

C# 正则表达式 - 只有在子字符串存在时才匹配?

好的,所以我想我已经掌握了否定的方法 - 现在只选择一个包含指定子字符串的匹配怎么办? 给定: 这是从 0 到 1 的随机信息位.这是我不想匹配的非随机信息这是这一点的结束这是从 0 到 1 的随机信息位.这是我想要匹配的随机信息这是这一点的结束 并尝试以下正则表达式: /(?s)This is a random bit(?:(?=This is a random).)*?This i ..
发布时间:2021-07-07 18:32:19 C#/.NET

为什么超前(有时)比捕获快?

此问题的灵感来自将s/,(\d)/$1/与s/,(?=\d)//进行比较:前者使用捕获组仅替换数字,而不替换逗号,后者使用前瞻性确定逗号是否由数字代替.如此答案中所讨论的,为什么有时后者有时会更快? 解决方案 这两种方法做不同的事情,并且开销成本也不同.捕获时,perl必须复制捕获的文本.无需消耗即可进行前瞻性比赛;它必须标记开始的位置.您可以使用re 'debug'编译指示来查看正在发生 ..
发布时间:2020-07-08 08:40:01 其他开发

匹配两个不带括号的引号

我需要一个正则表达式,匹配所有出现在引号(()之前的两个引号('').我对括号做了一个负面的展望,后跟了一个引号.但是为什么这不起作用: /(?!\()''/g 例如使用该字符串 (''test''test 它应该匹配第二个匹配项,但不匹配第一个匹配项,但它匹配两个匹配项. 当我使用完全相同的解决方案但检查换行而不是括号时,它工作正常: /(?!^)''/g 使 ..
发布时间:2020-07-01 05:08:51 前端开发

如何为每个InputStream使用不同类型的InputStream来读取同一InputStream上的不同数据组?

我需要以各种方式在Java中保存一些数据,分别保存为File,String和System.out ...,最后我得到了3种方法,它们几乎做同样的事情.因此,我将它们更改为使用OutputStream作为参数的单个方法.我向单个OutputStream写了一些东西,例如一些文本,一个序列化的对象,另一个序列化的对象,一些数字数据... 但是现在我被卡住了.我忽略了一个事实,即我无法区分已写的不 ..
发布时间:2020-07-01 05:08:44 Java开发

Peg.js引擎在进行正则表达式前瞻后会退步吗?

根据regular-expressions.info的环顾四周,引擎在进行前瞻后退了一步: 让我们再看一次内部,以确保您了解 前瞻的含义.让我们应用q(?= u)i退出.这 提前查找现在是正数,其后是另一个标记.同样,q 匹配q和u匹配u.同样,前瞻的匹配必须是 丢弃,因此引擎从字符串中的i返回到u.这 前瞻成功,因此引擎继续执行i.但是我不能 匹配你因此,此匹配尝试失败.其余所有尝试均失败 ..
发布时间:2020-07-01 05:08:41 其他开发

正则表达式中的前瞻

我正在尝试使用正则表达式从包含几篇文章的文件中提取场所.我知道场地以For/From开头,后跟日期,以星期几或作者的名字开头(如果缺少日期),我编写了以下正则表达式以匹配场地,但是,直到作者的名字,这意味着如果该文章有日期,日期也将出现在场地中. """((? ..
发布时间:2020-07-01 05:03:47 其他开发

括号中的正则表达式开头

我有一个正则表达式试图按专业划分问题.说我有以下正则表达式: (?P[0-9x]+) 此问题很好用(正确匹配:7) (7)以下哪一项被认为是食道癌的危险因素? 为此(正确匹配:8和13) (8,13)30岁女性闭经,血清雌激素水平低和血清LH/FSH高,最可能的诊断是: 但不适用于此错误匹配(错误匹配:20个). 早孕自然流产(20周 ..
发布时间:2020-07-01 05:02:09 其他开发

Perl正则表达式:如何从CSV行中删除引号内的引号

我从CSV文件中获得了一行,其中"作为字段包围符,而,作为字段分隔符作为字符串.有时,数据中的"会破坏字段包围符.我正在寻找一个正则表达式删除这些". 我的字符串如下: my $csv = qq~"123456","024003","Stuff","","28" stuff with more stuff","2"," 1.99 ","",""~; 我看过此,但我不知道如何分辨只删 ..
发布时间:2020-07-01 05:00:49 其他开发

Java中的Regex环顾四周结构:建议优化

我正在尝试在逗号分隔的列表中搜索文件名: text.txt,temp_doc.doc,template.tmpl,empty.zip 我使用Java的regex实现.输出要求如下: 仅显示文件名,而不显示其扩展名 排除以"temp_"开头的文件 它应该像这样: 文本 模板 空 到目前为止,我已经设法编写了令人满意的正则表达式来应对第一个任务: ..
发布时间:2020-07-01 05:00:40 Java开发

JavaScript正则表达式中的前瞻

我正在使用JavaScript,尝试替换html标记内的属性,并提出了此正则表达式: /]*(attr)=['"]{1,1}([^'"\s]*)['"]{1,1}/ig; 这有效.但是,我希望能够指定查找包含属性值的相同类型的引号.因此,例如,我想指定这是否为形式,以便在SECOND引号中查找单引号,而不是双引号.相反的情况, ..
发布时间:2020-07-01 04:59:38 其他开发

我如何要求一个正则表达式中至少有两个前瞻模式匹配?

以下正则表达式可确保密码至少包含一个小写字母,一个大写字母,一个数字和一个特殊字符: ^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*[^a-zA-Z0-9\s]).*$ 那行得通.在此基础上,我希望仅满足这些组中的两个才能使密码有效. 例如,这些将是有效的密码:aaaaa5,BFEWREWRE77,#2ccc. 我是否可以修改此正则表达式以支持 ..
发布时间:2020-07-01 04:57:49 其他开发

提前在凯特(Kate)寻找图案

我正在为法律书籍汇编案件表.我已经将其转换为HTML,以便可以使用标签进行搜索和替换操作,而我目前在Kate工作.文本中引用了案例名称,这些案例的引用都在脚注中,例如 Smith v Jones127 ......... [other stuff including newline characters].......127 (1937) 173 ER 406; ..
发布时间:2020-07-01 04:56:24 其他开发