IDL中字符串的操作的一些方法

IDL中字符串的操作的一些方法

2015-01-26 作者: giser 浏览: 4940 次

摘要: IDL中提供了很多进行字符串操作的函数,现在做一个简单的总结。 1.strlen() 计算字符串的长度,空字符串返回零 字符串中的空格也算做一个字符,无论空格在字符的前、后还是中间。 2.strtrim(字符串,n) 去掉字符串中的空格,n=0,表示去掉尾部空...

IDL中提供了很多进行字符串操作的函数,现在做一个简单的总结。 1.strlen() 计算字符串的长度,空字符串返回零 字符串中的空格也算做一个字符,无论空格在字符的前、后还是中间。 2.strtrim(字符串,n) 去掉字符串中的空格,n=0,表示去掉尾部空格,n=1去掉前部空格,n=2 前部和后堡空格都去掉 3.strmid(字符串,n1,n2,/reverse_ offset) 从字符串的n1个位置开始,取出n2个字符的子字符串,若省略n2,则读到字符串的末尾,/reverse_ offset指从尾部算起 空格、小数点也算作一个字符,print,strmid(‘ni hao’,1,3) 输出i h print,strmid('65000.12',5,2) 输出.1 从n1个位置开始,其实n1个数是不算的,后一个值才开始。也可以理解为字符是从0开始算起 4.strjoin([字符串1,字符串2,字符串n],分隔符) 将字符串用分隔符连接起来,如果没有设定分隔符则直接连接 print,strjoin(['a','b'],'$+$+c+d')输出a$+$+c+db$+$+c+dc print,strjoin(['a','b','d'],':') 输出 a:b:d 5.strsplit 根据指定的定界符把字符串分割成子串,默认的定界符为空格或tab 6.strput,字符串1,字符串2,n 用字符串2从第n个位置开始替换字符串1中的字符,并保持字符串1的长度不变 strput,‘000’ ,‘26’,1 输出 026 ;用b从第2个位置来代替c 7.strupcase和strlowcase 将字符串中的所有大写(小写)字母换成小写(大写)字符,其他非字母字符不转换 8.strcompress(字符串,/remove_ all) 去除单词间多于一个的空格,/remove_all会删除所有空格 如 print,strcompress('i love you') 输出i love you 9.strcmp 比较字符串是否相同 10.strpos (字符串1,字符串2) 检测字符串2是否在字符串1中出现,若出现返回出现的位置,否则返回-1 此外还有systime是返回当前的系统日期 10.strsplit 根据设定的界定符号来划分字符串 比如

print,strsplit('C:DocumentsandSettingsAdministratorcan_tmr.img','.',/extract)
C:DocumentsandSettingsAdministratorcan_tmr img

这里它是将'C:DocumentsandSettingsAdministratorcan_tmr.img'利用.分成了两部分 C:DocumentsandSettingsAdministratorcan_tmr和img 但是如果没有界定符的话,默认的界定符为空格或者tab 如 print,strsplit('C:Documents and SettingsAdministratorcan_tmr.img',/extract) C:Documents and SettingsAdministratorcan_tmr.img 这里其实包括了三个字符串C:Documents、and以及SettingsAdministratorcan_tmr.img 最后到底分成了几个字符串,可以设置关键字count来计算 如print,strsplit('C:Documents and SettingsAdministratorcan_tmr.img',count=n,/extract),n C:Documents and SettingsAdministratorcan_tmr.img 3 如果次命令没有设置/extract关键字,那么输出的结果是分割符号所处的位置 如print,strsplit('C:Documents and SettingsAdministratorcan_tmr.img',count=n),n 0 13 17 3

关注公众号
获取免费资源

随机推荐


Copyright © Since 2014. 开源地理空间基金会中文分会 吉ICP备05002032号

Powered by TorCMS

OSGeo 中国中心 邮件列表

问题讨论 : 要订阅或者退订列表,请点击 订阅

发言 : 请写信给: osgeo-china@lists.osgeo.org