通过RegEx按最后一个字排序Yahoo Pipes条目

时间:2012-11-12 09:30:48

标签: regex yahoo-pipes

我正在尝试按生成项目的一个条目的最后一个单词从CSV文件中对Yahoo Pipes生成的项目进行排序:

this Pipe生成的示例JSON项:

"items": [
  {
    "name": "Prof. Dr.-Ing. Richard Bamler",
    "link": "http:\/\/www.lmf.bv.tum.de",
    "lehrstuhl": "Lehrstuhl f\u00fcr Methodik der Fernerkundung",
    "y:row": "1",
    "description": null,
    "title": null
  },

我想我需要一个RegEx来提取名称字符串的最后一个单词(第一个问题),我无法弄明白。

一如既往,谢谢你的时间。

1 个答案:

答案 0 :(得分:1)

I reworked your pipe a little bit。我不熟悉本地化的标题,但似乎是“komm”。是后缀而不是名称,所以我在正则表达式的末尾构建了一个例外。

规则应该如下:

^.* ([^ \.]+)( komm\.)?$替换为$1


$1是对第一个匹配组([^ \.]+)的反向引用。匹配组匹配不是空格或句点的最后一组连续字符。

此表单是必需的,因为正则表达式将在Javascript环境中运行,并且Javascript不能正确处理非{as}字符,如ü(它认为它是非单词)。

最后还有( komm\.)?,以便它可以忽略该后缀(如果存在)。

除此之外,我做了一些修改以清理输出,因此它更容易辨认。