pattern-matching相关内容

在 R 中按顺序查找开始和停止索引

假设我有以下序列: x = c( 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0) 在 R 中有没有一种优雅的方法来返回每个 1 序列的开始和停止索引? 答案应该是一个 2 列的数组,其中 nRows = 1 的序列数: startIndx = [ 1, 5, 7 ]停止索引 = [ 2, 5, 9 ] 谢谢. BSL 解决方案 假设您的向量由 0 和 ..
发布时间:2021-06-14 20:22:13 其他开发

在 Scala 中,如何针对具有类型参数的类型测试“Any"对象的类型?

我正在尝试获得一种类型安全的方式来转换解析 JSON 字符串的结果.我想检查一个字段是 Map[String, any] 还是普通字符串.我的第一次尝试是 def test(x:Any) = {x 匹配 {case m:Map[String,Any] =>......} 这会导致“类型模式 Map[String,Any] 中的非变量类型参数 String 未被检查,因为它被擦除消除了" ..
发布时间:2021-06-14 20:22:08 其他开发

用制表符/空格分隔输出:Perl

我正在处理三个文本文档.第一个是主输入(Input 1),单词和单词类型(名词、动词等)用制表符分隔. 输入 1 John N去V最佳学校N.秒玛丽·N来了V来自 P家N.秒 第二个和第三个输入文本文件如下所示: 输入 2 约翰玛丽 输入 3 到从 我的目标是将第二个和第三个文本文件与主要输入进行比较和匹配,并获得如下输出: 预期输出: John N N去V到 P ..
发布时间:2021-06-14 20:22:05 其他开发

正则表达式替换重复的字符串模式

我需要用每个基本构造单元替换单词中的重复模式.例如我有字符串“TATATATA",我想用“TA"替换它.此外,我可能会替换 2 次以上的重复,以避免替换正常单词. 我正在尝试使用 replaceAll 方法在 Java 中执行此操作. 解决方案 我想你想要这个(适用于任何长度的重复字符串): String result = source.replaceAll("(.+)\\1+", ..
发布时间:2021-06-14 20:22:02 Java开发

数据中意外插入的全词匹配

我有字符串考虑 my $string = 'String 需要被评估'; 在 $string 我正在搜索评估或任何其他词.问题是他们可能会在字符串中插入一些标签例如.String 需要 evaluated 这是意料之外的.在这种情况下,我如何搜索单词? 这是我试过的代码: my $string = '待评估的文本';my $string2 = "Te ..
发布时间:2021-06-14 20:21:59 其他开发

Scala 模式匹配引用

当模式匹配案例类时,你实际上如何引用它所匹配的类? 这里有一个例子来说明我的意思: 密封特征值case class A(n: Int) extends Valuev 匹配 {情况A(x)=>做某事(A);} 其中 v 是 value 类型,doSomething 接受 A 类型的参数,而不是 Value. 解决方案 这样做 v 匹配 {情况 a@A(x) =>做某事(一)} ..
发布时间:2021-06-14 20:21:56 其他开发

如何模式匹配继承树中的抽象父类

我是具有 Java 背景的 Scala 新手. 有没有办法在类继承树中模式匹配超类(或特征),叶子作为案例类,节点抽象类或特征?据我所知,case类继承是不允许的. 我认为在大型继承树中模式匹配抽象类会很有帮助 在下面的代码中,最后一种情况是在编译过程中匹配语句错误 密封特质 Person {定义名称:字符串}case class Customer(name: String, ..
发布时间:2021-06-14 20:21:53 其他开发

将哈希字符 (#) 与正则表达式匹配

我有一个包含正则表达式的 XML 文档(所以你不需要用 \ 转义).基本上我试图匹配音乐和弦符号,这个正则表达式工作正常,但拒绝匹配哈希: \b[A-G](m|b|\#|sus|\d)*?\b 解决方案 问题是词边界锚\b只匹配字母数字和非字母数字字符,所以不会't 在 # 之后匹配(除非它本身后跟一个字母数字). 使用 \b[A-G](?:m|b|#|sus|\d)*(?:\b|( ..
发布时间:2021-06-14 20:21:50 其他开发

Powershell 中的高级模式匹配

希望你能帮我做点什么.感谢@mklement0,我得到了一个很棒的脚本,它按字母顺序匹配单词的最基本的初始模式.但是缺少的是全文搜索和选择.当前脚本的示例,其中包含 Words.txt 文件中几个单词的小样本: 应用苹果申请剑剑单词字 变成: 应用剑单词 这很棒,因为它确实缩小到每行的基本模式!然而,它逐行执行的结果仍然有一个可以进一步缩小范围的模式,即“Word"(大写不重要),因此理想 ..
发布时间:2021-06-14 20:21:44 其他开发

正则表达式匹配图像 URL

我正在尝试使用一个简单的正则表达式来验证 URL 是否包含结尾数字 var testRegex =/^https?:\/\/(?:[az\-]+\.)+[az]{2,6}(?:\/[^\/#?]+)+\.(?:jpe?g|gif|png)$/;var imageUrl = "http://stackoverflow.com/questions/406192/how-to-get-the-curr ..
发布时间:2021-06-14 20:21:41 其他开发

VI 删除除模式之外的所有内容

我有一个巨大的 JSON 输出,我只需要删除每行中除了一个小字符串之外的所有内容. 字符串的格式为 "title": "someServerName" “someServerName"(引号内的部分)可能变化很大. 我最近的一次是这样的: :%s/\("title":\s"*"\) 但这只是设法删除 "title": " 我唯一想要在每一行中留下的是 "title": " ..
发布时间:2021-06-14 20:21:38 其他开发

匹配 Perl 中第 n 个最长的可能字符串

Perl 正则表达式的模式匹配量词是“贪婪的"(它们匹配可能的最长字符串).为了强制匹配“不贪婪",a ?可以附加到模式量词 (*, +). 这是一个例子: #!/usr/bin/perl$string="111s11111s";#-- 贪婪匹配$string =~/^(.*)s/;打印“$1\n";# 打印 111s11111#-- 非贪婪匹配$string =~/^(.*?)s/;打印 ..
发布时间:2021-06-14 20:21:35 其他开发

未解析的 flex 记录(需要知道此上下文中所有字段的名称)

我一直在尝试使用元组列表作为参数创建一个函数,但我不断收到错误消息:“未解析的弹性记录(需要知道此上下文中所有字段的名称)" 我的代码是: fun convert d = ( (map (#1) d) , (map (#2) d) ); 这基本上是试图将一对列表转换为一对列表.我还尝试将 d 的类型声明为 :('a * 'b) list 但这导致了更多错误.我认为这与元组的未知大小有关,可以使 ..
发布时间:2021-06-14 20:21:32 其他开发

使用纯 sed 对列进行复杂转置

我尝试了几个小时来找到一个 纯 sed 这个问题的解决方案.显然,不幸的是我没有成功.一个非常棘手的问题. 示例(来自 awk 问题): 输入: 第111话第222话第 333 章第 444 章第555话ccc 666 输出: aaa 111,222,333bbb 444,555ccc 666 输入 APM00065101435 189APM0006510 ..
发布时间:2021-06-14 20:21:30 其他开发

Scala 模式匹配印刷精美

是否有可能以某种方式将 PartialFunction(假设它始终只包含一个案例)编组为人类可读的? 假设我们有 Any 类型的集合(消息:List[Any])以及使用模式匹配块定义的 PartialFuntion[Any, T] 的数量. case 对象 R1案例对象 R2案例对象 R3val pm1: PartialFunction[Any, Any] = {案例“foo"=>R1}v ..
发布时间:2021-06-14 20:21:27 其他开发

复合类型的意外行为

我有3个特点 特性 A性状B特质 AB 用 B 扩展 A 和方法 def collect[E: Manifest](list: List[Any]) =列出 flatMap {案例记录:E =>一些(记录)案例_ =>没有任何} 对于给定的列表 val list = new A {} :: new A {} :: new A with B {} :: new AB {} :: Nil ..
发布时间:2021-06-14 20:21:24 其他开发

为什么_destroy 在语句的末尾?

我已经看到了一些其他问题和答案指出let _ = foo() 在语句的末尾而不是在作用域退出处销毁结果,这正是 let _a = foo() 所做的. 我找不到对此的任何官方描述,也找不到此语法的任何基本原理. 我对一些相互交织的事物感兴趣: 官方文档中有没有提到它? 这个选择背后的历史是什么?它是 Rust 的绑定/解构规则的自然后果吗?它是从另一种语言继承的东西吗?或者它有 ..
发布时间:2021-06-14 20:21:21 其他开发

xpath - 使用包含通配符

我有以下几点,并试图看看是否有更好的方法.我知道它可以使用开始/包含来完成.我正在使用 firefox 10 进行测试,我相信它实现了 xpath 2.+. 测试节点是 .... 有没有办法使用通配符来获取 foo1/foo2 节点.. 类似的东西 //a[@id =* 'foo']或者//a[包含(@id*,'foo')] 这会说,给我一个“a",其中 id 以“foo"开头 ..
发布时间:2021-06-14 20:21:18 其他开发