使用数字+字母作为文本的安全分隔符吗?

使用数字+字母作为文本的安全分隔符吗?

考虑到您必须在不使用特殊字符的情况下分隔文本,使用 [0-9][az] (0e、0f 等) 是否可以被认为是安全的?

换句话说,在计算机语言和一般文本中,是否有可能(除了哈希值等某些情况)在文本/代码中遇到例如“0e”?

目的是使用这种字母组合的变体来分隔字段。

例如:Field10e字段20e字段3

(条目始终是一行,包含多个字段)

答案1

最初由 Kamil Maciorowski 在上述评论中提出,此答案基于他的反馈。我将把此内容设为社区 wiki,这样我就不会因此获得声誉。

使用数字+字母作为文本的安全分隔符吗?

答案是否定的。字母和数字的组合越短,它成为您想要拆分的单元格之一的内容的可能性就越大。

话虽如此,卡米尔·马乔罗夫斯基还是想出了一个很好的替代方案。

您的目标显然是找到一种好的方法,将多条信息存储在一个表中,其中只有字母、数字和空格可用。

使用转义字符是一种常见的做法。只要在您的字段中出现转义字符,就可以轻松实现这一点。

假设您要创建一个特殊字符:1,对于您存储在数据集中的每个字段,您将用替换所有出现的111现在,1可以用作特殊字符,因为它永远不会仅显示为 1。

因此,要分隔字段,您只需使用_1_(_ 是一个空格,但为了可见性,写为 _。)

假设您有以下想要存储的数据集,1,12,123 您需要将所有 1 替换为 11,并将无效的分隔符替换为适当的分隔符,即_1_,您的数据集将如下所示:11 1 112 1 1123

为了再次使用这些数据,首先将文本拆分为一个数组,其中_1_是分隔符,然后循环遍历数组中的所有条目并将 11 更改为 1,将数组变成1,12,123

答案2

不,这不能算作保存。
只需用你自己的问题作为例子。你已经在其中使用了四次序列“0e”。
使用可能是字段内容的内容来分隔字段永远不是一种保存,也不是一个好主意。
通过使用多个字符,你可以使其不太可能与字段内容发生冲突,但你可能不确定将来会在那里存储什么。

相关内容