*! version 1.0.0 2025

Title

cnclean -- 文本标准化处理程序

Syntax

cnclean
varlist
[,
options]

主要选项
replace 替换原变量内容

generate(string) 指定新变量名后缀（默认: _std）

文本处理选项
trim 去除首尾空格（默认执行）

notrim 不去除首尾空格

spaces 处理多余空格（默认执行）

nospaces 不处理多余空格

fullwidth 全角字符转半角（默认执行）

nofullwidth 不进行全角转半角

大小写转换
lower 转换为小写

upper 转换为大写

proper 首字母大写

高级选项
punct 标准化标点符号（中文标点转英文）

tabs 将制表符转换为空格

newlines 移除换行符

special 移除特殊字符

digits 统一数字格式（全角转半角）

alpha 统一字母格式（全角转半角）

verbose 显示详细处理信息

Description

cnclean 对字符串变量进行标准化处理，包括全角半角转换、空格处理、
大小写转换等多种文本清理功能。该程序特别适合处理中英文混合文本数据。

默认情况下，程序会执行以下操作：

• 全角字符转换为半角字符

• 多个连续空格替换为单个空格

• 去除字符串首尾的空格

程序会自动跳过非字符串变量，并在处理时给出提示。

Options

主要选项

replace 直接替换原变量的内容。如果不指定此选项，程序会创建新变量。

generate(string) 指定生成新变量的后缀。默认值为"_std"。
例如，如果原变量名为"text"，新变量将命名为"text_std"。

文本处理选项

trim/notrim 控制是否去除字符串首尾的空格。默认执行trim。

spaces/nospaces 控制是否处理多余空格。默认会将多个连续空格
替换为单个空格，并处理标点符号周围的不当空格。

fullwidth/nofullwidth 控制是否将全角字符转换为半角字符。
这包括全角数字、字母和常用符号。默认执行转换。

大小写转换

lower 将所有字母转换为小写。

upper 将所有字母转换为大写。

proper 将每个单词的首字母转换为大写（标题格式）。

注意：lower、upper和proper选项互斥，不能同时使用。

高级选项

punct 标准化标点符号，将中文标点转换为对应的英文标点。
例如："。"转为"."，"，"转为","等。

tabs 将制表符（\t）转换为空格。

newlines 移除文本中的换行符（\n、\r、\r\n）。

special 移除特殊字符，仅保留基本ASCII字符、中文字符和常用标点。

digits 确保所有数字都是半角格式（包含在fullwidth选项中）。

alpha 确保所有英文字母都是半角格式（包含在fullwidth选项中）。

verbose 显示详细的处理过程信息，便于了解每步操作。

Examples

基本用法：标准化单个变量

. cnclean company_name

替换原变量

. cnclean address, replace

处理多个变量并指定新变量后缀

. cnclean name address phone, generate(_clean)

转换为小写并处理标点

. cnclean description, lower punct replace

完整的文本清理

. cnclean text_var, punct tabs newlines special verbose

使用通配符处理所有文本变量

. cnclean text*, replace upper

仅进行全角转半角，不处理空格

. cnclean chinese_text, nospaces notrim

Author

Xiaokang Wu

Nanjing University of Science and Technology

Email: mailto:wuxk@njust.edu.cn

cnclean.ado - 文本标准化处理程序

Version 1.0.0

2025年开发

Also see

帮助：ustrregexra, ustrtrim, ustrlower,
ustrupper, ustrtitle

相关：string functions