如何修复谷歌电子表格删除前导空格

Google Spreadsheet 存在一个问题,即在粘贴包含前导空格的文本时会删除前导空格。

要求缩进可读的 SQL 语句经常被粘贴到 Google Spreadsheets 中,但这是一种现象,其中所有缩进的前导空格都被删除,导致可读性差。

1. Google 电子表格前导空格被删除的问题

复制以下 SQL,

SELECT x, y
  FROM (SELECT 1 AS x, true AS y UNION ALL
        SELECT 9, true UNION ALL
        SELECT NULL, false)
 ORDER BY x NULLS LAST;

+------+-------+
| x    | y     |
+------+-------+
| 1    | true  |
| 9    | true  |
| NULL | false |
+------+-------+

(资源: https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax?hl=ko#order_by_clause)

当粘贴到 Google 电子表格中时,所有前导空格都会被删除,如下所示:

구글 스프레드시트에 붙여넣기한 SQL: 선행 공백 제거됨
SQL 粘贴到 Google 电子表格中:删除了前导空格

2. 如何在 Google 电子表格中保留前导空格

如果您在编辑器中将 '(single quotation mark (= single quotation mark), single quotation) 添加为每行的第一个字符并将其粘贴到 Google 电子表格中,则不会删除并保留前导空格。

例如,在 Notepad++ 中使用以下文本,

Notepad++ SQL Text 예시
Notepad++ SQL 文本示例

将光标置于第一行第一列, Alt + C 或按“编辑 > 列模式...”。执行“”菜单,输入字符'(单引号(=单引号),单引号)后 进入 如果按下 键,它会被添加为每行的第一个字符,如下所示。

Notepad++ SQL Text: 첫번째 열에 작은따옴표 추가 예시
Notepad++ SQL 文本:第一列加单引号的例子

现在,如果您复制上面的文本并将其粘贴到 Google 电子表格中,前导空格会得到很好的保留,如下所示。

구글 스프레드시트에 붙여넣기한 SQL: 선행 공백 유지됨
SQL 粘贴到 Google 电子表格中:保留前导空格

单引号光看是看不到的,但单击单元格时会出现在上方的输入栏中。

구글 스프레드시트에 붙여넣기한 SQL: 입력창에는 작은따옴표가 나타남
SQL 粘贴到 Google 电子表格中:单引号出现在输入字段中

但是,在这种状态下,即使您复制 Google Spreadsheet 的文本并将其粘贴到其他地方,也会排除单引号,并粘贴原始文本,包括前导空格。除了用于保留前导空格之外,单引号似乎没有任何问题。

关注这个问题有一段时间了,google了也没找到,心想在excel中加个单引号来格式化文本就好了,于是试了一下,问题就解决的干干净净。

作为参考,在DBeaver中,您可以按照以下流程运行它。

  1. Alt + 转移 + A 使用 键切换到列编辑模式
  2. 转移 +  使用 键选择第一列,输入单引号,然后
  3. 再次 Alt + 转移 + A按下切换到正常编辑模式
  4. 复制文本并粘贴到 Google 电子表格中

该方法适用于所有支持分栏模式编辑的文本编辑器。根据编辑器的不同,快捷键或菜单功能可能略有不同,但在第一列中添加单引号就足够了。

我们研究了在将 SQL 和 Python 等源代码输入 Google 电子表格时如何保持缩进。如果有其他方法,请在评论中告诉我。

* 英文摘要:如何在 Google 电子表格中保留前导空间。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

zh_CN简体中文