使用 SQLite 从编号列表中的字符串开头删除数字

Remove numbers from beginning of strings in a numbered list with SQLite

我将一个长编号列表导入 table,字符串格式如下:

1. fdhsglahs sdhkgs
2. urgbvdgh ndovh
3. 8yhbnxjghr nvdfo dfhioj
...
9999. vnur neeu nu

我想删除字符串开头的数字、与数字相邻的 "." 以及紧跟在 "." 之后和下一个字符之前的任意数量的空格 (也就是说,在字符串本身的开头之前)。

在 SQLite 中找不到执行此操作的方法。

请注意,有些字符串包含数字作为字符串的一部分,这些数字不会被删除。

对于此要求,您可以使用 string functions,例如 substr()instr()ltrim()

select ltrim(substr(col, instr(col, '.') + 1))
from tablename 

col 替换为列的名称。
此代码 returns . 左修剪空格后的字符串部分。
demo.

如果要更新 table:

update tablename
set col = ltrim(substr(col, instr(col, '.') + 1));

参见demo