| 目标类型 | 源类型 | 复制函数 |
|---|---|---|
| pchar | string | strpcopy |
| pchar | pchar | strcopy |
| pchar | 'string' | = |
| string | pchar | = |
| string | string | = |
| string | 'string' | = |
| 定义 | 说明 | 库 |
|---|---|---|
| Pos(substr, str) | 返回子字符串的位置 | System |
| AppendStr(str1,str2) | str2 连接到 str1 尾,不建议使用 | SysUtils |
| Length(str) | 取字符串长度 | |
| StrLen(pchar) | 返回字符串长度,nil 时异常 | |
| StrEnd(pchar) | 返回指向字符串结尾指针,nil 时异常 | |
| StrMove(destPchar,sourPchar,len) | 复制 len 个字符 | |
| StrCat(destPchar,sourPchar) | 返回两个字符串连接后的 PChar | |
| StrLCat(destPchar,sourPchar,maxLen) | 返回两个字符串连接后的 PChar,有结果长度限制 | |
| StrCopy(destPchar,sourPchar) | 复制字符串 | |
| StrECopy(destPchar,sourPchar) | 复制字符串到另一个的结尾 | |
| StrLCopy(destPchar,sourPchar,maxLen) | 复制字符串,有长度限制 | |
| StrPCopy(destPchar,sourString) | 复制字符串 | |
| StrPLCopy(destPchar,sourString,maxLen) | 复制字符串,有长度限制 | |
| StrScan(Pchar,char) | 返回字符在字符串中第一处出现的指针,无返回 nil | |
| StrRScan(Pchar,char) | 返回字符在字符串中最后一处出现的指针,无返回 nil | |
| StrPas(Pchar):string | 指针转为字符串,直接赋值也可 | |
| StrPos(Pchar1,Pchar2) | 返回找到的第一个子字符串处的指针 | |
| StrAlloc(size):Pchar | 分配指定大小的字符串指针 | |
| StrNew(Pchar):Pchar | 分配与另一个相同大小的字符串指针 | |
| StrDispose(Pchar) | 释放分配的字符串指针 | |
| StrBufSize(Pchar) | 返回指针分配时的大小 | |
| LeftStr(str,len) | 取字符串左边部分 | StrUtils |
| MidStr(str,start,len) | 取字符串中间部分,从 1 起 | StrUtils |
| RightStr(str,len) | 取字符串右边部分 | StrUtils |
| StringReplace(str,old,new,flag) | 字符串替换
flag 包含 rfReplaceAll 时替换所有匹配 |
|
| StringOfChar(char,count) | 返回由若干个字符连接而成的字符串 | System |
| ResemblesText(const str1,str2) | 返回两个字符串是否相似 | |
| AnsiContainsText(string,substr) | 返回是否包含子字符串 | |
| StartsText(substr, string) | 返回是否以子字符串开头 | |
| EndsText(substr, string) | 返回是否以子字符串结尾 | |
| ReplaceText(string, find, to) | 返回字符串替换后的结果 | |
| MatchText(str, strArray) | 返回字符串是否位于数组中 | |
| IndexText(str, strArray) | 返回字符串在数组中的位置,无返回 -1 | |
| DupeString(string, cnt) | 返回字符串重复连接的结果 | |
| ReverseString(string) | 返回倒置的字符串 | |
| StuffString(string,start,len,tostr) | 返回将字符串指定位置替换后的结果,位置从 1 起 | StrUtils |
| RandomFrom(strArray) | 随机返回数组中的一个字符串 | |
| IfThen(cond,TrueStr,FalseStr) | 根据条件返回其中一个字符串 | |
| SearchBuf(...) | 搜索子字符串所在位置,无则返回 nil | |
| NewStr(string):PString | 返回在堆中分配的字符串指针,不建议使用 | |
| DisposeStr(pstring) | 释放用 NewStr 分配的指针 | |
| AssignStr(pstr,string) | 更新字符串指针,原指向的资源自动释放 | |
| UpperCase(string) | 返回字符串的大写形式 | |
| StrUpper(Pchar) | 返回指针,内容转为大写 | |
| WideUpperCase(widestring) | 返回双字节转大写形式的字符串 | |
| LowerCase(string) | 返回字符串的小写形式 | |
| StrLower(Pchar) | 返回指针,内容转为小写 | |
| WideLowerCase(widestring) | 返回双字节转小写形式的字符串 | |
| CompareStr(str1,str2) | 比较字符串,返回值为 正数/0/负数 | |
| WideCompareStr(str1,str2) | 双字节,同上 | |
| CompareText(str1,str2) | ||
| WideCompareText(str1,str2) | 双字节 | |
| CompareMem(p1,p2,length) | 比较指定长度内存数据是否相同 | |
| SameText(str1,str2) | 比较字符串是否相同,不区分大小写 | |
| WideSameText(str1,str2) | 双字节 | |
| AnsiSameStr(str1,str2) | 比较字符串是否相同,区分大小写 | |
| StrIComp(pchar1,pchar2) | 比较字符串,返回值为 正数/0/负数,不区分大小写 | |
| StrLComp(pchar1,pchar2,maxLen) | 比较字符串,有长度限制,区分大小写 | |
| StrLIComp(pchar1,pchar2,maxLen) | 比较字符串,有长度限制,不区分大小写 | |
| StrComp(pchar1,pchar2) | 比较字符串,返回值为 正数/0/负数,区分大小写 | |
| Trim(string) | 返回去除左右空白的字符串,小于 32 的字符视作空白 | |
| TrimLeft(string) | 返回去除左空白的字符串 | |
| TrimRight(string) | 返回去除右空白的字符串 | |
| QuotedStr(string) | 返回单引号成双的字符串 | |
| AnsiExtractQuotedStr(PChar,char) | 返回脱去边界(以 char 为边界)的字符串 | |
| AnsiDequotedStr(string, Char) | 返回脱去引号(以 char 为引号)的字符串 | |
| AdjustLineBreaks(string, style) | 返回标准回车换行格式字符串 | |
| IsValidIdent(string) | 返回是否为标准标识符 | |
| ByteType(const S: string; Index: Integer): TMbcsByteType | 返回字符串S位置Index上的字符在MBCS中类型 | SysUtils |
| StrByteType(Str: PChar; Index: Cardinal): TMbcsByteType | 返回指针字符串Str位置Index上的字符在MBCS中类型 | SysUtils |
| ByteToCharLen(const S: string; MaxLen: Integer): Integer | 返回字符串中有多少个多字节字符 | SysUtils |
| CharToByteLen(const S: string; MaxLen: Integer): Integer | 返回字符串S中有多少个字符 | SysUtils |
| ByteToCharIndex(const S: string; Index: Integer): Integer | 返回字符位置对应的多字节字符位置 | SysUtils |
| CharToByteIndex(const S: string; Index: Integer): Integer | 返回多字节字符位置对应的字符起始位置 | SysUtils |
| StrCharLength(const Str: PChar): Integer | 返回第一个字符的宽度 | |
| StrNextChar(const Str: PChar): PChar | 返回字符指针Str的下一个字符指针 | |
| CharLength(const S: String; Index: Integer): Integer | 返回字符串中指定位置的字符宽度 | |
| NextCharIndex(const S: String; Index: Integer): Integer | 返回下一个字符的位置 | |
| IsPathDelimiter(const S: string; Index: Integer): Boolean | 返回字符串S中指定位置Index上是否是一个路径分隔符 | |
| IsDelimiter(const Delimiters, S: string; Index: Integer): Boolean | 返回字符串S中指定位置Index上是否是一个分隔符Delimiters | |
| IncludeTrailingPathDelimiter(const S: string): string | 返回包括最后路径分隔符 | |
| IncludeTrailingBackslash(const S: string): string | 返回包括最后斜线 | |
| ExcludeTrailingPathDelimiter(const S: string): string | 返回排除最后路径分隔符 | |
| ExcludeTrailingBackslash(const S: string): string | 返回排除最后斜线 | |
| LastDelimiter(const Delimiters, S: string): Integer | 返回最后一个分隔符的位置 | |
| AnsiPos(const Substr, S: string): Integer | 返回子串Substr在字符中第一次出现的位置,从 1 起 | |
| AnsiStrPos(Str, SubStr: PChar): PChar | 返回指针子串Substr在指针字符中第一次出现的指针位置,从 1 起 | |
| AnsiStrRScan(Str: PChar; Chr: Char): PChar | 返回在指针字符串Str搜索字符Chr最后一个出现的地址 | |
| AnsiStrScan(Str: PChar; Chr: Char): PChar | 返回在指针字符串Str搜索字符Chr第一个出现的地址 | |
| StringReplace(const S, OldPattern, NewPattern: string; Flags: TReplaceFlags): string | 返回替换后的字符串 | |
| WrapText(const Line, BreakStr: string; const BreakChars:
TSysCharSet; MaxCol: Integer): string WrapText(const Line: string; MaxCol: Integer = 45): string; overload |
返回对字符串自动换行 | |
| FindCmdLineSwitch(const Switch: string; const Chars:
TSysCharSet; IgnoreCase: Boolean): Boolean; overload; function FindCmdLineSwitch(const Switch: string): Boolean; overload; function FindCmdLineSwitch(const Switch: string; IgnoreCase: Boolean): Boolean; overload |
返回程序命令参数是否找到 |
| SearchBuf(Buf: PChar; BufLen: Integer; SelStart, SelLength: Integer; SearchString: String; Options: TStringSearchOptions = [soDown]): PChar |
| 参数 | 意义 |
|---|---|
| Buf: PChar | 搜索范围 |
| BufLen | 搜索范围大小 |
| SelStart | 选择文本开始位置 |
| SelLength | 选择文本长度 |
| SearchString | 搜索的字符串 |
| [Options] | 选项:
soDown : 向下搜索 |