gpt4 book ai didi

TCL 命令 - 字符串修剪

转载 作者:行者123 更新时间:2023-12-04 00:09:04 26 4
gpt4 key购买 nike

我正在使用命令“string trimright”来修剪我的字符串,但我发现这个命令修剪的次数超出了要求。

我的表达式是“dssss.dcsss” 如果我使用字符串修剪命令修剪最后几个字符“.dcsss”,它会修剪整个字符串。我该如何处理?

命令:

     set a [string trimright "dcssss.dcsss" ".dcsss"]
puts $a

预期输出:

    dcsss

实际输出

    ""

最佳答案

string trimright 命令将其(可选)最后一个参数视为要删除的 set 个字符(因此 .dcsss 是相同的就像 sdc. 一样),就像 string trimstring trimleft 一样;实际上,string trim 就像同时使用 string trimrightstring trimleft 一样。这使它不适合您尝试做的事情;要删除存在的后缀,您可以使用多种技术:

# It looks like we're stripping a filename extension...
puts [file rootname "dcssss.dcsss"]
# Can use a regular expression if we're careful...
puts [regsub {\.dcsss$} "dcssss.dcsss" {}]
# Do everything by hand...
set str "dcssss.dcsss"
if {[string match "*.dcsss" $str]} {
set str [string range $str 0 end-6]
}
puts $str

如果您正在做的是文件名操作,就像看起来一样,请使用这些选项中的第一个。 file 命令有一些非常有用的命令,用于以跨平台方式处理文件名。

关于TCL 命令 - 字符串修剪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13714155/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com