FME里的查询替换转换器(一)
原文发布时间:2011-01-04
作者:糖糖
在Word或Excel等文本或数字编辑软件里,都有‘查询’、‘替换’的功能,该功能可以快速高效地帮助我们查找到文本或表格中的查询对象,需要的时候甚至可以一步替换成想替换的内容。在FME里同样也有这种查找或替换文本串功能的转换器——StringPairReplacer、StringReplacer、StringSearcher。以下简单介绍这三个转换器的功能和之间的差别:
一、最简单快速方便的查找替换转换器——StringPairReplacer。顾名思义, 该转换器以‘查找值 替换值 查找值 替换值…’成对的语法形式完成查询替换功能。如下
例1:该案例中要将源属性值中'b’替换为's’,'o'替换为'a'
源属性值是:
bobby
Replacement Pairs设置:
b s o a
结果为:
sassy
例2:如果查询对象里也包含一个空格,必须用加一个\来区分
源属性值为:
billy bob
成对替换值为:
y\ b a
则结果为:
billaob
二、能用正则表达式查询替换的转换器——StringReplacer
与StringPairReplacer相比,该转换器不是把查找值和替换值一并写在语法里,而是在各自的参数中分别设置,并且在Use Regular Expressions设置为'Yes'的情况下使用高级正则表达式(AREs)。简单地说,AREs是一个或多个被‘|’分隔的分支,与任意能与之匹配的相匹配,以下为表达式中各符号的含义:
| 分隔符
* 0个或多个其之前的匹配的顺序
+ 一个或多个其之前的匹配的顺序
? 0个或一个其之前的匹配
. 匹配任何单个字符
^ 匹配开头的值
$ 匹配结尾的值
[ ] 包含某个字符选择的设置
( )包含某个子表达式——无论匹配的是_{}列表属性里的哪个子表达式
a 能够列入可匹配的任意字符
连接好转换器后,在Attribute参数中选择查找的属性列;Text to Find中设置查找的文本,可以输入要查找的文本对象,也可以在列表中选择属性列;Replacement Text中键入替换值,如果在Use Regular Expressions设置为'Yes',则键入正则表达式;最后Case Sensitive中设置是否区分大小写。
例1:该案例是最简单的子字符串替换类型,不用正则表达式功能的纯文本替换
源字符串: Bobby
被替换文本: obb
替换文本: ill
是否规则表达式: no
是否区分大小写: yes
结果: Billy
例2: 该案例中,0个或多个‘b’字符被空值替换
源字符串: Bobby
被替换文本: b*
替换文本:
是否规则表达式: yes
是否区分大小写: yes
结果: Boy
例3: 该案例中, 'bby'被复制并按表达式的模式替换(连字号优先)
源字符串: Bobby
被替换文本: b*y
替换文本: --\\0-\\0
是否规则表达式: yes
是否区分大小写: yes
结果: Bo--bby-bby
以上是StringPairReplacer和StringReplacer的介绍.
FME里的查询替换转换器(一)相关推荐
- oracle里的查询转换
oracle里的查询转换的作用 Oracle里的查询转换,有称为查询改写,指oracle在执行目标sql时可能会做等价改写,目的是为了更高效的执行目标sql 在10g及其以后的版本中,oracle会对 ...
- Angular2 - [innerHTML] pipe(把字符串里的 /n 替换成 <br/>)
需求 把接口返回的使用说明字符串innerHTML出来: 本来想直接 [innerHTML] 就可以了,但是事不遂人愿,那就写个pipe过滤一下: 过程 // 接口返回字符串:// "co ...
- shell变量里的字符替换
shell变量里的字符替换 b=${a/123/321};将${a}里的第一个123替换为321 b=${a//123/321};将${a}里的所有123替换为321 shell调试: sh -x a ...
- mysql对结果再查询_SQL如何在查询结果里再次查询?
展开全部 可以使用括号"(select查询子句)"套嵌一个查询结果. 语法格32313133353236313431303231363533e59b9ee7ad9431333339 ...
- 仿养生网 帝国CMS 更新后域名栏目链接一直没变 解决方法:在后台地图--模板标签替换里直接全部替换
帝国CMS安装教程 http://jingyan.baidu.com/article/f54ae2fcf2b3921e93b84955.html 安装完后, 更新后域名栏目链接一直是这个http:/ ...
- linux 查询替换文件内容吗,Linux 下查询文件的方法 替换文件内容
在当前目录里查找所有名为以 php 开头的文件: find -name "php*" 在subdir 目录里查找所有的名为以 php 开头的文件: find subdir -nam ...
- mysql 拼音搜汉字,[转]在mysql 里实现查询汉字的拼音首字母
php 里查询汉字的拼音首字母已经有很多参考的代码了. 现在给出在mysql 里实现的, 测试环境是mysql-5.0.27-win32 1.建立拼音首字母资料表 DROP TABLE IF EXIS ...
- FME中的常用kml转换器介绍(一)
原文发布时间:2010-05-06 作者:Peri 1.KML介绍 KML (Keyhole Markup Language)是一种基于XML的OGC标准,随着Google Earth的广泛应用,KM ...
- 一个从文本文件里“查找并替换”的功能
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 # -*- coding: UTF-8 -*- file = inp ...
最新文章
- 迁移学习,让深度学习不再困难……
- 金山手机安全卫士试用报告
- Eclipse中创建SpringBoot项目流程,及报错解决方案
- 嵌入式系统中进程间通信的监视方法
- node更新到最新版本_win10怎么更新flash到最新版本「系统天地」
- 【AI视野·今日NLP 自然语言处理论文速览 第十一期】Mon, 21 Jun 2021
- Scala 知识点掌握1
- e-006 matlab,基于MATLAB进行潮流计算
- 计算机春季高考试题答案,最新春季高考历年真题-天津市春季高考计算机试卷...
- 【DOS BAT】Windows下微信双开、微信多开
- 基于孪生网络的单目标跟踪持续汇总
- 逻辑为基、数企赋能(NO.7)—非逻辑思维
- 关于KX混响插件:REVERB R详解
- 将两个字符串连接起来,不要用strcat函数。
- 专属程序员的西游记,不是程序员读不懂哦?
- 密码分析之单表代换原理详解与算法实现
- 转!!以太网方案设计
- 2017蓝桥杯B组国赛 瓷砖样式
- 寻找100以内的质数
- vue后台管理侧边栏菜单布局