如果您对rreplace-如何替换字符串中最后一次出现的表达式?和replace替换最后一个感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解rreplace-如何替换字符串中最后一次出现的表达式
如果您对rreplace - 如何替换字符串中最后一次出现的表达式?和replace替换最后一个感兴趣,那么这篇文章一定是您不可错过的。我们将详细讲解rreplace - 如何替换字符串中最后一次出现的表达式?的各种细节,并对replace替换最后一个进行深入的分析,此外还有关于C# 字符串替换第一次或者最后一次出现的匹配项、Delphi如何获取一个字符串再另一个字符串中最后一次出现的位置、EXCEL 查找某个字符在字符串中最后一次出现的位置、JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)的实用技巧。
本文目录一览:- rreplace - 如何替换字符串中最后一次出现的表达式?(replace替换最后一个)
- C# 字符串替换第一次或者最后一次出现的匹配项
- Delphi如何获取一个字符串再另一个字符串中最后一次出现的位置
- EXCEL 查找某个字符在字符串中最后一次出现的位置
- JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
rreplace - 如何替换字符串中最后一次出现的表达式?(replace替换最后一个)
Python中是否有一种快速替换字符串的方法,而不是从头开始,而是replace
从结尾开始?例如:
>>> def rreplace(old, new, occurrence)>>> ... # Code to replace the last occurrences of old by new>>> ''<div><div>Hello</div></div>''.rreplace(''</div>'',''</bad>'',1)>>> ''<div><div>Hello</div></bad>''
答案1
小编典典>>> def rreplace(s, old, new, occurrence):... li = s.rsplit(old, occurrence)... return new.join(li)... >>> s''1232425''>>> rreplace(s, ''2'', '' '', 2)''123 4 5''>>> rreplace(s, ''2'', '' '', 3)''1 3 4 5''>>> rreplace(s, ''2'', '' '', 4)''1 3 4 5''>>> rreplace(s, ''2'', '' '', 0)''1232425''
C# 字符串替换第一次或者最后一次出现的匹配项
//
string lon="123-25-63"
//第一次出现的位置
int a = lon.IndexOf("-");
//最后出现的位置
int b = lon.LastIndexOf("-");
//移除再插入
lon = lon.Remove(a, 1).Insert(a, "°");
lon = lon.Remove(b, 1).Insert(b, "′");
Delphi如何获取一个字符串再另一个字符串中最后一次出现的位置
EXCEL 查找某个字符在字符串中最后一次出现的位置
在EXCEL文档里想从很长的文件路径中取得文件名,【数据】→【分列】是个不错的选择,但用函数会显得更高大上一些。
首先,需要获取最后一个"\"所在的位置。
方法1:
FIND("@",SUBSTITUTE(A1(字符串所在单元格),"\","@",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))
这个比较好理解,只要理解了SUBSTITUTE第四个参数的作用就好。
SUBSTITUTE第四个参数:可选。 指定要用 new_text 替换 old_text 的事件。 如果指定了 instance_num,则只有满足要求的 old_text 被替换。 否则,文本中出现的所有 old_text 都会更改为 new_text。
例:
所以,整个函数的意思是把字符串中最后一个"\"替换成字符串中没出现过的其他字符(如“@”),然后在查找这个没出现过的字符所在的位置就可以了。
方法2:
LOOKUP(1,0/(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\"),COLUMN(1:1))
这个理解起来比较难。
先来理解COLUMN(1:1)的意思:
在空白EXCEL文档里选中第一行,在编辑栏里输入=COLUMN(1:1),再按Ctrl+Shift+Enter组合键
可以看到COLUMN(1:1)的结果是一个1~16384的数组。
再看(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\"),作用是一个个取出字符串中的字符,并判断是否与"\"相同,相同则返回TRUE,否则返回FALSE。
0/TRUE得0,0/FALSE得
所以0/(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\")的结果是
所以LOOKUP(1,0/(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\"),COLUMN(1:1))的结果是
EXCEL帮助里的备注:
本例中的LOOKUP函数在0/(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\")里是找不到1的,所以它找到的是0,但在0/(MID(A1(字符串所在单元格),COLUMN(1:1),1)="\")里有多个0,从结果来看,它找到的是最后一个0。(为什么?在EXCEL帮助里没有找到相关说明)
声明:本文是本人查阅网上及书籍等各种资料,再加上自己的实际测试总结而来,仅供学习交流用,请勿使用于商业用途,任何由此产生的法律版权问题概不负责,谢谢。
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
JavaScript lastIndexOf 方法
lastIndexOf 方法用于计算指定的字符串在整个字符串中最后一次出现的位置,并返回该数值。其语法如下:
str_object.lastIndexOf( search, start )
参数说明:
参数 | 说明 |
---|---|
str_object | 要操作的字符串(对象) |
search | 必需。要检索的字符串 |
start | 可选。指定开始检索的位置,如省略该参数,则将从字符串的最后一个字符开始检索 |
提示:字符串是从 0 开始计数的。
lastIndexOf 方法实例
<script language="JavaScript">
var str = "www.jb51.net";
document.write( str.lastIndexOf( "." ) + "<br />" );
document.write( str.lastIndexOf( ".", 5 ) + "<br />" );
document.write( str.lastIndexOf( ".", 10 ) );
</script>