string - 如何在水晶报告中从头到尾移动字符串中的特殊字符
问题描述
在我的程序中,我(经过许多程序)得到了标记化的单词。不幸的是,由于颠倒了它们,它们在单词的开头保留了标点符号,例如。"BARGE "UR 106 How to move that" 从头到尾 -> BARGE "UR 106" 另一个例子:(. REIS (HASAN M应该是 -> REIS (HASAN M.)
到目前为止,我已经尝试过:
{DOCHS14.SHEM__ONIA} startswith ["\"","\(","\."\,"\(\."]
then
Local StringVar str:={DOCHS14.SHEM__ONIA}[0]
TrimLeft ({DOCHS14.SHEM__ONIA})
{DOCHS14.SHEM__ONIA}&str;
但这给了我错误:此处应为数字、货币金额、布尔值、日期、时间、日期时间或字符串。
如何解决?还是有其他方法可以解决这个问题?
解决方案
您的公式中有多个问题。
startswith
需要一个字符串而不是字符串数组。- 只有双引号必须被转义,但你做错了。(见这里)
虽然startswith
也可以使用 with 的解决方案,但我使用了Left
-function 。在您的第三个示例中,必须检查两个字符,因此必须首先检查并输出另一个结果。
if Left({DOCHS14.SHEM__ONIA}, 2) = "(." Then
Mid({DOCHS14.SHEM__ONIA}, 3) + ".)"
else if Left({DOCHS14.SHEM__ONIA}, 1) in ["""", "(", ".", ","] Then
Mid({DOCHS14.SHEM__ONIA}, 2) + Left({DOCHS14.SHEM__ONIA}, 1)
else
{DOCHS14.SHEM__ONIA}
推荐阅读
- networking - Pod 与外部世界的 IP 地址重叠问题
- c - gstreamer 1.14.5 multiple rtspsrc element pipeline, reconnect individual streams when disconnected via 'C' code
- python - 从python字典中提取id作为列表
- android-studio - How To Dynamically Query For Tables Enteries In Database Using Room
- python - Parsing file object XML with lxml returns external entity error
- mysql - @Get 控制器和布尔查询中的 NestJS 验证失败(需要数字字符串)
- angular - Why does the selected attribute work for each ng-container?
- maven - 在 maven 中通过的 intelij 失败测试
- r - 找出以 x 为因数的范围内的所有数字?
- java - “可恢复错误”接口是否比处理多个“捕获”块中的恢复更有效?