G++报表去除药品名称中的特殊字符串
G++报表里的药品名称里老是混着个“(加 急)”,看着挺碍眼?其实起来还挺。用 C++自带的字符串方法就能搞定,find
加replace
两步走,精准拿下。你只要判断有没有目标字符串,有就直接换成空,干净利落。
G++的报表系统里有个坑,药品名称有时候会带上(加 急)
,你要是不清洗一下,展示出来就挺别扭的。其实这类“特殊字段”的场景,在 C++里还蛮常见的。
用std::string
就挺顺手,先找、再改。比如你可以先用find("(加 急)")
定位位置,再用replace()
去掉那段文字。代码也不复杂:
std::string removeEmergencyTag(const std::string& drugName) {
if (drugName.find("(加 急)") != std::string::npos) {
return drugName.replace(drugName.find("(加 急)"), 6, "");
}
return drugName;
}
嗯,这段函数封装好后,你在任何地方都能复用。配合Report.ControlByName("MemoBox53").DisplayText
一起用,UI 显示也干净了不少。
还有个小建议哈——如果你发现有时候不止一个特殊词,那就考虑用个while
循环,把所有匹配到的都删光,别只删第一个。
想看类似的方法?像 Java、PHP、JavaScript 也都有类似技巧:
如果你在做报表或系统展示相关的开发,碰到这种特殊字符清洗的需求,可以直接套用这套方法,省时省力,效果也还不错。
下载地址
用户评论