0

我有一个问题,有时(经常)从数据库中提取数据会在不应该存在的文本字符串之间添加空格。

我要做的是创建一个小脚本来查看这些字符串并删除空格。

问题是空格可以在字符串中的任何位置,而字符串是一个变化的变量。

例子:

"StaffID": "0000 25"<- 数字中的空格不应该在那里。有没有办法让脚本查看此特定行,如果找到空格,则将其删除。
或者:"DateOfBirth": "23-10-199 0"<-它还需要查看这些空格并删除它们。

问题是相同的数据也有如下行:
"Address": " 91 Broad street"<- 空格显然应该在这里。

我试过使用TRIM,但这只会从开始/结束中删除空格。

值得一提的是,提取的数据是 json 格式,然后使用 API 导入到新系统中。

4

1 回答 1

2

您应该考虑您想要做什么的逻辑,以及是否可以通过编程来确定您是否可以教您的脚本在哪里放置空格或不适合放置空格。事实上,这是目前人工智能研究面临的最大问题之一,所以不幸的是,你可能不得不手动完成这项工作。

如果是我,我会指定每列所期望的数据格式类型,并尽我所能尝试解析这些字符串。例如,如果您知道 StaffID 不包含空格,则可以有一个规则来删除它们:

$staffid = $staffid.replace("\s+",'')

您可以使用此答案中已经涵盖的强制格式化(.replace)来做一些更复杂的事情,但同样,这需要对从哪一列中准确得出的数据有所期望。

您可能希望更仔细地查看这些空间的来源,而不是像这样处理输出。检索脚本在做吗?也许您可以优化您从中提取的数据库?

于 2019-06-07T15:47:18.833 回答