和excel中查找替换功能一样强大的skill自定义函数编写
本帖最后由 q409647014 于 2015-4-12 08:53 编辑大家集思广益看怎么写一个和excel中一样强大的查找替换string中的一个或者几个char,附上我写的一个功能不完备的skill函数。要替换的函数只能在string出现一次。如果出现多次就会出现问题。大家一起想办法完善一下这个子函数吧。也好供大家以后编程使用。原因是使用的函数遍历string的元素,发现相同的char便会执行操作。不能区分多个在一起的char
例如 2_R2我想换成3_R2或者是2_R3我会使用
_replaceStringElement "2_R2""2_" "3_") 但是结果会是3_R3_
_replaceStringElement "2_R2""R2" "R3") =>("R3_R3")
defun(_replaceStringElement (_originalString _originalchar _replacechar)
let((_tempString _breakedString _combinedString _finalString)
_combinedTempString=""
_tempString=strcat("#" _originalString "#")
_breakedString=parseString(_tempString _originalchar)
_combinedString=buildString(_breakedString _replacechar)
_finalString=foreach(x parseString(_combinedString "#") strcat(_combinedTempString x))
)
)
楼主想得太复杂了。试试下面两个函数:
rexCompile
rexReplace
具体使用方法你自己研究下,这儿我就不多说明了。。。。:) vivienluo 发表于 2015-4-12 22:18
楼主想得太复杂了。试试下面两个函数:
rexCompile
rexReplace
好吧,我今天早上用这个没有成功,刚才又读了一下程序的解释,终于搞定了!谢谢! vivienluo 发表于 2015-4-12 22:18
楼主想得太复杂了。试试下面两个函数:
rexCompile
rexReplace
defun(_replaceStringElement (_originalString _originalchar _replacechar i)
rexCompile(_originalchar)
rexReplace(_originalString _replacechar i)
) vivienluo 发表于 2015-4-12 22:18
楼主想得太复杂了。试试下面两个函数:
rexCompile
rexReplace
还有一个疑问,加入是1_R1,设置参数i,用以表示2 3 4等数字,如何实现将1_R1替换为2_R1,3_R1,4_R1呢?如果用i循环和上面的语句好像有些不好用了就。 慢慢学习中………辛苦了~……… 学习一下,谢谢分享。 一整个很深奥 需要慢慢学习 学习一下,正则表达式,
页:
[1]