df-drills pandas · Polars · DuckDB SQL · DuckDB Relational 题目列表 登录

清洗姓名

简单 07-string 字符串 stringtrimcaseregex

把 raw_customers.full_name 规范成统一的格式:

  1. 去掉首尾的空格;
  2. 内部连续的多个空格合并成一个空格;
  3. 以空格分隔出每个“单词”,单词的第一个字符转大写,其余字符全部转小写。

注意第 3 步只看空格:单词内部的连字符、撇号后面的字母不大写,例如 o'brien → O'brien,jean-luc → Jean-luc,x2y → X2y。

  • 数据里的空白字符只有普通空格。
  • full_name 为 null 的仍是 null;全是空格的结果是空字符串 ""。

输入

  • raw_customers(id, full_name, email, phone, birthday, signup, vip, spend),所有列都是字符串。

输出

列为 id, full_name,行数与输入相同(id 可能重复,照常输出),行顺序不限。

输入表 (case base,共 2 个 case:base、edge)

raw_customers messy/raw_customers
#idstringfull_namestringemailstringphonestringbirthdaystringsignupstringvipstringspendstring
1 1 xu ming xu.ming60@mail.cn +86 189 3287 9217 - 2025-02-12 YES 3428
2 2 yang guo yang.guo68@example.com 10033907579 2003-04-21 05/01/2025 n 2,132.69
3 3 guo jing guo.jing91@mail.cn 15384019161 01/02/1994 2025-01-01 Y 3716.67
4 4 zhou jie zhou.jie26@qq.com 14514506123 29/02/2000 01/07/2025 no 999.73
5 5 liu yang liu.yang51@mail.cn 13049403 31/04/1999 2025-09-22 0 2024
6 6 zhang san ZHANG.SAN@Example.COM 13095597297 06/07/1978 15/11/2025 no $1,200.50
7 7 null zhou.jie54@example.com (111) 08436469 2003.3.24 2025-08-22 N $4,809.60
8 8 BOB smith N/A 173-0024-5892 11/08/1978 2026-06-19 yes 4842.25
9 9 LI WEI li.wei40@example.com (109) 17145211 - 13/05/2025 0 3592.13
10 10 he ping he.ping54@example.com 179-0966-9091 14/05/1977 02/02/2026 n 4395.47
11 11 guo jing guo.jing4@mail.cn 19170317974 05/05/1993 2025-07-27 0 2,316.99
12 12 he ping he.ping86@mail.cn 136-3363-9532 1992-01-23 11/10/2025 N 1442.64
13 13 BOB smith bob.smith67@mail.cn 1971-11-05 2025-07-14 1 $738.58
14 14 WANG FANG wang.fang@@mail.com N/A 09/04/1981 07/07/2026 yes 4152.00
15 15 grace HOPPER grace.hopper93@mail.cn (127) 73068985 - 2025-05-07 YES 1624
16 16 guo jing guo.jing34@qq.com (105) 81075864 2025-02-05 0 4,802.51
17 17 LIU YANG liu.yang93@qq.com 17791378 16/11/2025 no 740.03
18 18 GUO JING guo.jing26@mail.cn 18180960808 04/10/2004 2025-06-20 n 4196.37
19 19 zhou jie zhou.jie17@mail.cn 167-8513-6904 1971-01-07 13/01/2025 0 free
20 20 CHEN JING chen.jing66@qq.com - 28/04/2003 2025-05-20 0 1656
显示前 20 行,共 80 行

期望输出 (case base,行顺序不限)

#idStringfull_nameString
1 1 Xu Ming
2 2 Yang Guo
3 3 Guo Jing
4 4 Zhou Jie
5 5 Liu Yang
6 6 Zhang San
7 7 null
8 8 Bob Smith
9 9 Li Wei
10 10 He Ping
11 11 Guo Jing
12 12 He Ping
13 13 Bob Smith
14 14 Wang Fang
15 15 Grace Hopper
16 16 Guo Jing
17 17 Liu Yang
18 18 Guo Jing
19 19 Zhou Jie
20 20 Chen Jing
21 21 Yang Guo
22 22 Chen Jing
23 23 Xu Ming
24 24 Zhao Lei
25 25 Amy Chen
26 26 Grace Hopper
27 27 Wang Fang
28 28 Ada Lovelace
29 29 Xu Ming
30 30 Ma Yun
31 31 Wang Fang
32 32 Chen Jing
33 33 Wu Han
34 34 Huang Rong
35 35 Guo Jing
36 36 Zhang San
37 37 Wu Han
38 38 Ma Yun
39 39 Yang Guo
40 40 Ma Yun
41 41 Liu Yang
42 42 Zhang San
43 43 Xu Ming
44 44 Zhou Jie
45 45 Huang Rong
46 46 Grace Hopper
47 47 Yang Guo
48 48 Liu Yang
49 49 Amy Chen
50 50 Zhao Lei
显示前 50 行,共 80 行