轨道
/
C#
C#
/
练习
/
一尘不染
一尘不染

一尘不染

学习练习

简介

字符

C# 的char类型是一种 16 位的量,用来表示文本中最小的可寻址单位。多个char可以组成像"word"这样的字符串,char也可以单独处理。它们的字面量用单引号表示,例如'A'。

C# 的char支持 UTF-16 Unicode 编码,所以除了拉丁字符集之外,世界上几乎所有书写系统都能表示,例如希腊字母'β'。

有很多内置的库方法可以用来检查和操作char,它们都是System.Char类的静态方法。

StringBuilder

char有时会和StringBuilder对象一起使用。这个对象提供了一些方法,可以逐个字符地构建字符串并对其进行操作。整个过程结束后,可以调用它的ToString方法输出一个完整的字符串。

说明

在本练习中,你将实现一组不完整的工具例程,用来帮助开发者清理标识符名称。 你将在 5 个任务中逐步构建 Clean 例程。 有效的标识符由零个或多个字母和下划线组成。 在所有情况下,输入字符串都保证不为 null。 如果向 Clean 函数传入空字符串,则应返回空字符串。 请注意,调用方应避免用空标识符调用 Clean 例程,因为这样的标识符没有实际作用。

1. 把遇到的所有空格替换为下划线

实现(static)Identifier.Clean()方法,把任意空格替换为下划线。 这也适用于开头和结尾的空格。

Identifier.Clean("my   Id");
// => "my___Id"

2. 把控制字符替换为大写字符串 "CTRL"

修改(static)Identifier.Clean()方法,把控制字符替换为大写字符串"CTRL"。

Identifier.Clean("my\0Id");
// => "myCTRLId",

3. 把 kebab-case 转换为 camelCase

修改(static)Identifier.Clean()方法,把 kebab-case 转换为 camelCase。

Identifier.Clean("à-ḃç");
// => "àḂç"

4. 省略所有不是字母的字符

修改(static)Identifier.Clean()方法,省略所有不是字母的字符。

Identifier.Clean("1😀2😀3😀");
// => ""

5. 省略小写希腊字母

修改(static)Identifier.Clean()方法,省略从 'α' 到 'ω' 范围内的所有希腊字母。

Identifier.Clean("MyΟβιεγτFinder");
// => "MyΟFinder"
通过 GitHub 编辑 链接将在新窗口或新标签页中打开
C# Exercism

准备好开始 一尘不染 了吗?

注册 Exercism,借助 62 个概念178 个练习 和真人导师指导,学习并掌握 C#,全部免费。