C++ Builder 参考手册 ➙ System::Sysutils ➙ AnsiExtractQuotedStr
把使用引号引起来的文字的引号去掉,可获取转换出错位置。
头文件:#include <System.SysUtils.hpp>
命名空间:System::Sysutils
函数原型:
System::UnicodeString __fastcall AnsiExtractQuotedStr(
System::WideChar * &Src,
System::WideChar Quote);
参数:
- Src:指向使用引号引起来的文字,WideChar 指针引用类型,
函数返回时:如果有错误 Src 指向第一个出错的字符,如果没有错误 Src 指向源字符串的结束符; - AQuote:引号字符,WideChar 类型,例如单引号或双引号等;
返回值:
- 如果没有错误,参数 Src 指向的是引号 (参数 Quote 指定的字符) 引起来的文字,把前后的引号去掉,中间如果有两个连续的引号变成一个引号;参数 Src 指向源字符串的结束符;
- 如果有错误,返回值为出错之前的内容,如果第一个字符就出错了,即开头没有引号,返回值为空字符串;参数 Src 指向第一个出错的字符。
- 文字的开头和结尾都是引号,把开头和结尾的引号去掉,中间连续的两个引号变成一个引号,例如 "ab""c" 变成 ab"c
- 文字的开头是引号,中间有单个的引号,无论结尾是否有引号,都会在第一个单个引号的位置终止转换,返回前面的部分,例如 "abc""de"fgh"ijk" 转为 abc"de
- 文字的开头不是引号,返回值为空字符串;
- 可以使用 AnsiQuotedStr 函数生成这样的带引号的文字;
- 这个函数的参数都是 UnicodeString 或 WideChar 类型的了,虽然函数名以 Ansi 开头,参数为 AnsiString 或 char 类型的函数都移到 System.AnsiStrings.hpp 这个头文件里面了,参数为 AnsiString 类型的函数都看作过时的函数,不建议使用了。
相关:
- System::Sysutils::AnsiQuotedStr
- System::Sysutils::AnsiDequotedStr
- System::Sysutils::AnsiExtractQuotedStr
- System::Sysutils::QuotedStr
- System::Sysutils
C++ Builder 参考手册 ➙ System::Sysutils ➙ AnsiExtractQuotedStr
网友评论