Files
playbook/skills/tsl-api-reference/references/codegen/dotnet/runtime/string.md
T
2026-07-07 08:44:07 +00:00

473 lines
17 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 运行时 / 字符串
## `adjustLineBreaks(s, style)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------------------- | ---- |
| `s` | string | |
| `style` | TTextLineBreakStyle | |
返回:string
## `ansiDequotedStr(s, aquote)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| -------- | ------ | ---- |
| `s` | string | |
| `aquote` | string | |
返回:string
## `ansiIndexStr(a_text, a_values)`
判定指定的字符串Atext可以匹配到的第一个由参数Avalues指定的字符串数组中元素索引号,就是数组的第几个元素(从0开始计算)。返回整数,如果没有找到匹配的字符串,就返回-1。与AnsiEndsText函数不同,字符串的匹配是大小写敏感的 注意:这种判定是基于大小写敏感
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `a_text` | string | 字符串类型,需匹配、查找串 |
| `a_values` | array | 字符串型数组,匹配串数组 |
返回:int
## `ansiIndexText(a_text, a_values)`
判定指定的字符串Atext可以匹配到的第一个由参数Avalues指定的字符串数组中元素索引号,就是数组的第几个元素(从0开始计算)。返回整数,如果没有找到匹配的字符串,就返回-1 注意:这种判定是基于大小写不敏感
| 参数 | 类型 | 说明 |
| ---------- | ------ | -------------------------- |
| `a_text` | string | 字符串类型,需匹配、查找串 |
| `a_values` | array | 字符串型数组,匹配串数组 |
返回:int
## `ansiMatchStr(a_text, avalues)`
判定指定的字符串Atext是否可以匹配由参数Avalues指定的字符串数组中的某个字符串。返回布尔型真假值,如果Atext匹配到了Avalues数组中的某个字符串,就返回真,否则返回假。与AnsiMatchText函数不同,字符串的匹配是大小写敏感的 注意:这种判定是基于大小写敏感
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------- |
| `a_text` | string | 字符串类型,子串 |
| `avalues` | array | 字符串型数组,源串数组 |
返回:bool
## `ansiMatchText(a_text, avalues)`
判定指定的字符串Atext是否可以完全匹配由参数Avalues指定的字符串数组中的某个字符串。返回布尔型真假值,如果Atext匹配到了Avalues数组中的某个字符串,就返回真,否则返回假。 注意:这种判定是基于大小写不敏感。
| 参数 | 类型 | 说明 |
| --------- | ------ | ---------------------- |
| `a_text` | string | 字符串类型,子串 |
| `avalues` | array | 字符串型数组,源串数组 |
返回:bool
## `ansiQuotedStr(s, quote)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `s` | string | |
| `quote` | string | |
返回:string
## `ansiStr2Array(value, aps)`
常用字符串函数相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `value` | string | |
| `aps` | string | |
返回:array
## `boolToStr(s)`
将布尔型转换成字符串类型并返回。参数UseBoolStrs一般为假,如果B为真,函数返回'-1',如果B为假,返回'0'。若想返回’True’与’False’的结果可用BoolToStr2实现。
| 参数 | 类型 | 说明 |
| ---- | ---- | ---------------------------------- |
| `s` | bool | 数字字符串Default:布尔型,一般为假 |
返回:string
## `containsText(a_text, a_sub_text)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------------ | ------ | ---- |
| `a_text` | string | |
| `a_sub_text` | string | |
返回:bool
## `dateTimeToString(format, date_time)`
根据参数Format给定的格式串将参数DateTime转换成字符串类型存到参数Result中,其中格式串的使用参照FormaTDateTime函数
| 参数 | 类型 | 说明 |
| ----------- | -------- | ------------------------------- |
| `format` | any | 字符串,格式串 |
| `date_time` | datetime | TDateTime类型,需转换的日期时间 |
返回:string
## `eval(exp)`
表达式求值。返回,表达式的值。字符串表达式中支持return。TSL.EXE支持 tsl -eval "echo 100"的模式直接调用TSL语句。 表达式允许在跨函数中传导引用参数和变量
| 参数 | 类型 | 说明 |
| ----- | ------------ | ----------------------------------------------------------------------------- |
| `exp` | TExpression> | 表达式类型,要计算的表达式。函数表达式直接执行,字符串表达式需在字符串前加&。 |
返回:any
## `fHeader()`
字符串,TS-OPS服务注册时需要指定的头部信息,比如TS-OPS-CALL等。 类型:读写
返回:string
## `fUrl()`
字符串,TS-OPS服务注册地址 类型:读写
返回:string
## `importjsonstring(json)`
将json串转化为天软数据类型。 对大无符号数据会自动转换为长整型(INT64) 注意:输入的字符串应是ASCII编码的。因为JSON标准使用UTF8编码,所以请先使用天软Utf8ToAnsi将UTF8编码的字符串缓缓为ASCII编码。可参考下面的例程。
| 参数 | 类型 | 说明 |
| ------ | ------ | ---------------- |
| `json` | string | 字符串,json串。 |
返回:any
## `leftStr(text, num_chars)`
返回字符串从开始向左数Num_Chars个字符组成的字符串,支持多字节语言,一个汉字当成一个字符。
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------- |
| `text` | string | 字符串 |
| `num_chars` | int | 字符个数 |
返回:string
## `ord(value)`
如果是STRING类型返回value\[1\]的ASCII序号,就是value字符串的第一个字符的ASCII序号,如果为WIDESTRING,则为UNICODE码。
| 参数 | 类型 | 说明 |
| ------- | ------ | ------------ |
| `value` | string | WideString\\ |
返回:int
## `reversebString(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
## 发音相关函数
## `rightStr(text, num_chars)`
前N个字符;基于所指定的字符数返回文本字符串中的最后一个或后几个字符;
| 参数 | 类型 | 说明 |
| ----------- | ------ | -------- |
| `text` | string | 字符串 |
| `num_chars` | int | 字符个数 |
返回:string
## `setChar(s, index, ch)`
设置字符串/二进制流中相应位置的字符。Char为0-255之间的整数类型
| 参数 | 类型 | 说明 |
| ------- | ------ | ------------------- |
| `s` | string | 字符串/二进制 |
| `index` | any | 整数 |
| `ch` | string | 0-225之间的整数类型 |
返回:string
## `setLikeFlag(flag, return_value)`
设置Like操作符号的正则表达式默认控制状态。默认值为1。
| 参数 | 类型 | 说明 |
| -------------- | ---- | ------------------------------------------------------------------------------------- |
| `flag` | int | 正则表达式控制模式,取值如下: 若同时设置多个模式,则设置参数值为其对应模式值之和即可 |
| `return_value` | int | 匹配成功则返回真,否则返回假 |
返回:bool
## `soundexWord(a_text)`
发音相关函数相关函数。
| 参数 | 类型 | 说明 |
| -------- | ------ | ---- |
| `a_text` | string | |
返回:int
## `str2Array(value, aps)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ------- | ------ | ---- |
| `value` | string | |
| `aps` | string | |
返回:array
## `string(value)`
将数据转换为字符串。
| 参数 | 类型 | 说明 |
| ------- | ------ | -------- |
| `value` | string | 输入数据 |
返回:string
## `strSubscriptTableToNormal(t, fn)`
字符串下标数组-->索引下标数组。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------------------------------------- |
| `t` | array | 二维数组,数据 |
| `fn` | string | 字符串或数值,行标变成数据之后使用的列名 |
返回:array
## `strToBool(s)`
如果S为'0',返回假,如果是非0的数字串,则返回真
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------- |
| `s` | string | 数字字符串 |
返回:bool
## `strToCurr(s)`
将数字字符串S转换成实数返回,字符串中不允许有千分号,最大有效小数位为4位,超过四位小数的处理在不同的版本处理可能存在不一致的地方。
| 参数 | 类型 | 说明 |
| ---- | ------ | ------ |
| `s` | string | 字符串 |
返回:float
## `strToDate(s)`
将字符串S转换成TDateTime类型的日期
| 参数 | 类型 | 说明 |
| ---- | ------ | ---------------------------------------- |
| `s` | string | 字符串,日期的字符串类型,如"2014-01-17" |
返回:datetime
## `strToDateTime(s)`
将字符串S转换成TDateTime类型的日期和时间
| 参数 | 类型 | 说明 |
| ---- | ------ | ----------------------------------------------------- |
| `s` | string | 字符串,日期时间的字符串类型,如"2014-01-17 10:00:00" |
返回:datetime
## `strToFloat(s)`
将数字字符串S转换成实数返回,字符串中不允许有千分号
| 参数 | 类型 | 说明 |
| ---- | ------ | ------ |
| `s` | string | 字符串 |
返回:float
## `strToInt(s)`
将字符串转换为整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
## `strToInt32(s)`
将字符串转换为32位整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt32
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
## `strToInt64(s)`
将字符串转换为64位整数。 支持各种进制格式字符串的转换(如二进制、十六进制等)。若只转换十进制格式字符串,可使用函数FAQ:DecToInt64
| 参数 | 类型 | 说明 |
| ---- | ------ | ------------------------ |
| `s` | string | 字符串。需转换的字符串。 |
返回:int
## `strToTime(s)`
将字符串S转换成TDateTime类型的时间
| 参数 | 类型 | 说明 |
| ---- | ------ | -------------------------------------- |
| `s` | string | 字符串,时间的字符串类型,如"15:20:34" |
返回:datetime
## `tryStrToTime(s)`
将字符串S转换成TDateTime类型的时间并存到参数Value中。如果转换成功,则返回真,否则返回假
| 参数 | 类型 | 说明 |
| ---- | ------ | ----------------------------------------------------------------------- |
| `s` | string | 字符串,日期的字符串类型,如"2014-01-17"Default:TDateTime类型,默认值 |
返回:bool
## `unUnicodeEsc2(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
## `unUnicodeEsc2W(s)`
字符串相关函数。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `s` | string | |
返回:string
## `writeFile(data_type, alias, file_name, pos, length, data)`
将数据写到本地文件。文件格式可以是字符流、整数流、实数流、字节流等。 多个线程同时写入时无需加锁等操作,仅需将位置设置为-1则可保障追加模式,如果调用失败,可检测返回值为字符串后然后重试即可。(当多线程尝试打开同一个文件写入时会返回错误)
| 参数 | 类型 | 说明 |
| ----------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `data_type` | int | 整数类型。参考文件读写类型函数。 |
| `alias` | string | 字符串类型。参考目录别名。 |
| `file_name` | int | 字符串类型。文件名称。 |
| `pos` | int | 整数类型。写文件的偏移位置,执行结束后将返回新的位置。 如果设为-1,则每次导出到文件的末尾(不会覆盖已有的数据)。 如果设为0,则从文件第一个位置开始导出(会覆盖掉原有位置的数据)。 如果设为1,则从文件的第二个位置开始导出,同0会覆盖,2,3,…依此类推。 如果设为-2,-3-4….,则如同设为0的效果。 |
| `length` | any | 整数类型。写入的数据长度。 |
| `data` | string | 写入的数据。如果文件类型不是rwRaw或者rwBinary则Data为一个指定类型的数组,否则,为需要写入的字符串。 |
返回:string
## 字符串与格式转换函数
## `floatToStrEx(r, n)`
浮点->字符串
| 参数 | 类型 | 说明 |
| ---- | ------- | ------------------------ |
| `r` | real | 实数 |
| `n` | integer | 整型数据,保留的小数位数 |
返回:string
### 示例
```tsl
return floatToStrEx (12.6578, 2);
// 结果:’ 12.66
```
## `textToHtml(src)`
将字符串转化为HTML标准格式的串
| 参数 | 类型 | 说明 |
| ----- | ------ | ---------- |
| `src` | string | 字符串类型 |
返回:string
### 示例
```tsl
src := "The First LETTER won\'t be replaced by \'one\', but the Second letter will.";
return textToHtml(src);
// 结果:
The First LETTER won't be replaced by 'one', but the Second letter will.
```
## `textToUrl(a_src)`
将字符串转化为URL标准格式的串
| 参数 | 类型 | 说明 |
| ------- | ------ | ---------- |
| `a_src` | string | 字符串类型 |
返回:string
### 示例
```tsl
a_src := "#abcd 10";
return textToUrl(a_src);
// 结果:%23abcd%20%2010
```
## `htmlToText(src)`
将HTML标准格式的串转化为文本字符串
| 参数 | 类型 | 说明 |
| ----- | ------ | ---------- |
| `src` | string | 字符串类型 |
返回:string
### 示例
```tsl
Src := "The First LETTER won't be replaced by 'one', but the Second letter will.";
return htmlToText(src);
// 结果:The First LETTER won't be replaced by 'one', but the Second letter will.
```