文本处理
文本处理是一排小按钮加一个文本框:定好要对文字做的动作,点一下按钮,结果当场写回框里。专门用来收拾那种从网页或日志里粘出来、大小写乱、重复行多、夹着 HTML 标签的脏文本。
适合整理混了大小写的名单、给一列内容先去重再排序、把抓来的富文本去掉 <> 标签只留文字、给一堆行补上序号方便逐条对照。每个按钮都即时生效,可以连着点:先点「去重行」再点「升序」,一步到位。
所有操作只改下方文本框里的内容,点「撤销全部」回到本页最初的那段文本,点「示例」重新载入一段演示数据,改坏了不用慌。
怎么用
- 放进文本把待处理内容放进下方文本框,初始预置了一段 Banana、apple 的示例,直接替换成你的内容即可。
- 认三组按钮按钮按三组排列:「大小写」里有全大写、全小写、词首大写、句首大写;「行处理」里有去首尾空格、删空行、去重行、去重(忽略大小写)、去HTML标签;「排序」里有升序、降序、倒序、加行号。
- 点一下就生效点任意按钮,它立刻作用在文本框当前的内容上;框上方那行小字写着「每个操作即时作用于下方文本,可连续叠加。」想先去重再排序,就按顺序点这两个按钮。
- 把结果带走处理完点右下角「复制结果」拷走文本;点「示例」载回演示数据;点「撤销全部」(没改动时它是灰的)退回本页最初的版本。
示例
输入
apple banana apple cherry
输出
apple banana cherry
点一次「去重行」即可,重复的 apple 被删掉,每行保留第一次出现的顺序。
深入一点
三种「大写」不是一回事
全大写把每个英文字母都变成 A-F 形式;词首大写把每个英文单词的第一个字母大写、其余不动,只认英文单词边界;句首大写按行处理,把每行首字母大写、该行其余字母转小写。
这三种都只动英文字母,中文原样保留,不会把汉字「大写」。
两种去重的取舍
「去重行」按整行字符完全相同才去重,所以 Banana 和 banana 会被当成两行都留下;「去重(忽略大小写)」先把每行转小写、去掉首尾空格再比较,只保留第一次出现的那行、且按原样输出。
两者都保持首次出现的先后顺序,不会顺手帮你排序——要排序请再点「升序」。
排序和去标签的细节
升序 / 降序按简体中文拼音比较(中文 localeCompare),不是按 Unicode 编码,所以「阿」会排在「被」前面。「倒序」只是把行的顺序整个翻过来,不做大小比较。
「去HTML标签」删除的是被 <> 包裹的标签本身,不解析属性、也不还原 & 这类转义实体;标签之间的正文文字仍会留下。
注意事项
- 全部处理在浏览器内存里完成,不上传、不落盘。
- 去重以「行」为单位,同一行里重复的词不归它管。
- 「加行号」在每行前补「两位右对齐 + 点 + 空格」的序号,空行也会被编号。
- 文本很大时升序/降序的逐行比较会比重复、删空行慢一些。