|
不知道是谁写的这个命令,是有硬伤的!
直接上源码:
|
文本_删中间2 | 文本型 | | |
原文本 | 文本型 | | | | 前面文本 | 文本型 | | | | 后面文本 | 文本型 | | | | 是否不区分大小写 | 逻辑型 | | | | 保留前面文本 | 逻辑型 | | | | 保留后面文本 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局_开始位置 | 整数型 | | | 局_结束位置 | 整数型 | | | 局_返回文本 | 文本型 | | | 局_右边文本 | 文本型 | | | 局_返回后文本 | 文本型 | | | 局_返回前文本 | 文本型 | | |
局_开始位置 = 寻找文本 (原文本, 前面文本, , 是否不区分大小写 )如果真 (局_开始位置 = -1 )返回 (原文本 )局_返回前文本 = 取文本左边 (原文本, 局_开始位置 - 1)如果真 (保留前面文本 )局_返回前文本 = 局_返回前文本 + 前面文本 局_右边文本 = 取文本右边 (原文本, 取文本长度 (原文本 ) - 取文本长度 (局_返回文本 )) 局_结束位置 = 倒找文本 (局_右边文本, 后面文本, , 是否不区分大小写 )如果真 (局_结束位置 = -1 )返回 (原文本 )局_返回后文本 = 取文本右边 (局_右边文本, 取文本长度 (局_右边文本) - 局_结束位置 - 取文本长度 (后面文本) + 1)局_返回文本 = 局_返回前文本 + 局_返回后文本 如果真 (保留后面文本 )局_返回文本 = 局_返回前文本 + 后面文本 + 局_返回后文本 返回 (局_返回文本)
这个源码的这条命令这样写是完全多余:
“局_返回文本” 在这里是第一次出现,那么也就是说“取文本长度 (局_返回文本))” 无论如何都=0
既然“取文本长度 (局_返回文本))” 无论如何都=0
那么这句代码: “局_右边文本 = 取文本右边 (原文本, 取文本长度 (原文本) - 取文本长度 (局_返回文本))”
也就等于这句代码:“局_右边文本 = 原文本”
那么“局_右边文本”存在意义在哪里?
作者第一次用了寻找文本,第二次用了倒找文本,所以才幸免于“当前文本=后文本 时,不至于出现bug”,如果第二次用的不是倒找文本的话,这个就会出现bug
但是,即便第二次用了倒找文本, “局_右边文本 = 取文本右边 (原文本, 取文本长度 (原文本) - 取文本长度 (局_返回文本))” 还是显得多余。
我认为有更好的写法,非常简单。如果不愿意改的话,可以把那句代码改成“局_右边文本 = 原文本” 也让人舒服很多
|
评分
-
查看全部评分
|