string 用法小结

  1 long  to  char *

        char basetime[32];
long mBaseTime;
mBaseTime = (long)time(NULL);
memset(basetime,0,sizeof(basetime));
ltoa(mBaseTime,basetime,10);

        basetime:“1345636789”

2 char * to  string

      string strtime;
      strtime= basetime;

3 分割字符

    strtime = strtime.substr(5,5);

        strtime:“36789”

4 char* to long

      msgid = atol(strtime.c_str());

在 Tcl(Tool Command Language)中,字符串处理是编程的重要组成部分,提供了丰富的命令用于字符串操作。以下是关于 Tcl 字符串命令的用法和常见字符串处理方法的详细介绍。 ### `string` 命令的常用子命令 1. **`string length`** 返回指定字符串的长度(字符数)。 ```tcl set str "Hello, Tcl!" puts [string length $str] ;# 输出 11 ``` 2. **`string index`** 返回字符串中指定索引位置的字符(索引从 0 开始)。 ```tcl set str "Tcl is fun" puts [string index $str 0] ;# 输出 T ``` 3. **`string range`** 返回字符串中从起始索引到结束索引之间的子字符串。 ```tcl set str "Tcl is fun" puts [string range $str 0 2] ;# 输出 Tcl ``` 4. **`string wordstart` 和 `string wordend`** - `string wordstart` 返回字符串中包含指定索引位置字符的单词的起始索引。 - `string wordend` 返回字符串中包含指定索引位置字符的单词的结束索引。 ```tcl set str "Tcl is fun" set start [string wordstart $str 4] ;# 返回 4("is" 的起始位置)[^1] set end [string wordend $str 4] ;# 返回 5("is" 的结束位置)[^2] ``` 5. **`string tolower`、`string toupper` 和 `string trim`** - `string tolower` 将字符串转换为小写。 - `string toupper` 将字符串转换为大写。 - `string trim` 删除字符串两端的空白字符。 ```tcl set str " Hello, Tcl! " puts [string tolower $str] ;# 输出 " hello, tcl! " puts [string toupper $str] ;# 输出 " HELLO, TCL! " puts [string trim $str] ;# 输出 "Hello, Tcl!" ``` 6. **`string replace`** 替换字符串中从起始索引到结束索引之间的部分。 ```tcl set str "Hello, Tcl!" puts [string replace $str 7 10 "World"] ;# 输出 "Hello, World!" ``` 7. **`string map`** 按照指定映射替换字符串中的某些部分。 ```tcl set str "Hello, Tcl!" puts [string map {"Tcl" "World"} $str] ;# 输出 "Hello, World!" ``` ### 字符串处理方法 1. **拼接字符串** 使用 `append` 命令将多个字符串拼接在一起。 ```tcl set str "Hello" append str ", " "Tcl!" ;# str 变为 "Hello, Tcl!" ``` 2. **分割字符串** 使用 `split` 命令将字符串按指定分隔符分割为列表。 ```tcl set str "apple,banana,orange" set fruits [split $str ","] ;# 返回列表 {"apple" "banana" "orange"} ``` 3. **查找子字符串** 使用 `string first` 和 `string last` 查找子字符串的位置。 - `string first` 返回子字符串首次出现的索引。 - `string last` 返回子字符串最后一次出现的索引。 ```tcl set str "Hello, Tcl is great, Tcl!" puts [string first $str "Tcl"] ;# 输出 7 puts [string last $str "Tcl"] ;# 输出 18 ``` 4. **正则表达式匹配** 使用 `regexp` 命令进行正则表达式匹配。 ```tcl set str "Hello, 123 Tcl!" if {[regexp {\d+} $str match]} { puts "Found number: $match" ;# 输出 "Found number: 123" } ``` 5. **格式化字符串** 使用 `format` 命令按照指定格式生成字符串。 ```tcl set name "Tcl" set version 8.6 puts [format "Welcome to %s %d" $name $version] ;# 输出 "Welcome to Tcl 8" ``` ### 总结 Tcl 提供了多种强大的字符串处理命令,涵盖字符串长度获取、索引操作、子字符串提取、大小写转换、替换、拼接、分割、查找及正则表达式匹配等功能。掌握这些命令可以显著提升字符串处理的效率和灵活性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值