利用Python3.x 删除字符串中的特殊字符——即ASCII控制字符
利用Python3.x删除字符串中的特殊字符——即ASCII控制字符
本文知识点:
- Python3 文件的读写
- Ascii控制字符
- Notepad++展示控制字符
问题描述
在自然语言处理时,文件中会出现一些控制符例如
- 提示
可以通过Notepad++ 查看
本文的目的就是删掉此种类型的控制符
解决办法
利用python读取文件,每次处理一行文字或者说字符串,删掉后重新保存到新文件中 —— [ 小熊猫 ]
代码如下
# 这里是去掉了前31个特殊的ASCII字符,但是保留了回车换行符 即 10 和13(window下面是两个)
def strip_control_characters(s):word = ''for i in s:if ord(i)>31 or ord(i) == 10 or ord(i) ==13:word += ireturn word
with open('源文件名称.txt', 'r', encoding='utf-8') as fo:with open('新文件名称.txt', 'w') as fw:for line in fo:fw.write(strip_control_characters(line))
##附录:特殊字符ascii码
ASCII控制字符
二进制 | 十进制 | 十六进制 | 缩写 | 可以显示的表示法 | 名称/意义 |
---|---|---|---|---|---|
0000 0000 | 0 | 00 | NUL | ␀ | 空字符(Null) |
0000 0001 | 1 | 01 | SOH | ␁ | 标题开始 |
0000 0010 | 2 | 02 | STX | ␂ | 本文开始 |
0000 0011 | 3 | 03 | ETX | ␃ | 本文结束 |
0000 0100 | 4 | 04 | EOT | ␄ | 传输结束 |
0000 0101 | 5 | 05 | ENQ | ␅ | 请求 |
0000 0110 | 6 | 06 | ACK | ␆ | 确认回应 |
0000 0111 | 7 | 07 | BEL | ␇ | 响铃 |
0000 1000 | 8 | 08 | BS | ␈ | 退格 |
0000 1001 | 9 | 09 | HT | ␉ | 水平定位符号 |
0000 1010 | 10 | 0A | LF | ␊ | 换行键 |
0000 1011 | 11 | 0B | VT | ␋ | 垂直定位符号 |
0000 1100 | 12 | 0C | FF | ␌ | 换页键 |
0000 1101 | 13 | 0D | CR | ␍ | 归位键 |
0000 1110 | 14 | 0E | SO | ␎ | 取消变换(Shift out) |
0000 1111 | 15 | 0F | SI | ␏ | 启用变换(Shift in) |
0001 0000 | 16 | 10 | DLE | ␐ | 跳出数据通讯 |
0001 0001 | 17 | 11 | DC1 | ␑ | 设备控制一(XON 启用软件速度控制) |
0001 0010 | 18 | 12 | DC2 | ␒ | 设备控制二 |
0001 0011 | 19 | 13 | DC3 | ␓ | 设备控制三(XOFF 停用软件速度控制) |
0001 0100 | 20 | 14 | DC4 | ␔ | 设备控制四 |
0001 0101 | 21 | 15 | NAK | ␕ | 确认失败回应 |
0001 0110 | 22 | 16 | SYN | ␖ | 同步用暂停 |
0001 0111 | 23 | 17 | ETB | ␗ | 区块传输结束 |
0001 1000 | 24 | 18 | CAN | ␘ | 取消 |
0001 1001 | 25 | 19 | EM | ␙ | 连接介质中断 |
0001 1010 | 26 | 1A | SUB | ␚ | 替换 |
0001 1011 | 27 | 1B | ESC | ␛ | 跳出 |
0001 1100 | 28 | 1C | FS | ␜ | 文件分割符 |
0001 1101 | 29 | 1D | GS | ␝ | 组群分隔符 |
0001 1110 | 30 | 1E | RS | ␞ | 记录分隔符 |
0001 1111 | 31 | 1F | US | ␟ | 单元分隔符 |
0111 1111 | 127 | 7F | DEL | ␡ | 删除 |
ASCII可显示字符
|
|
|
利用Python3.x 删除字符串中的特殊字符——即ASCII控制字符相关推荐
- C 语言实例 - 删除字符串中的特殊字符
C 语言实例 - 删除字符串中的特殊字符C 语言实例 C 语言实例 删除字符串中的除字母外的字符. 实例 #include<stdio.h>int main() {char line[15 ...
- c语言中怎样删除字符串中的字母,删除字符串中的字符(C语言)
题目: 编程序将给定字符串中指定字符删除.要求删除指定字符后原字符串不能留下空位置,字符串和指定字符均由键盘输入 基本思路 将字符串与要删除的字符进行比较,若为相同字符,则将字符串中的该字符替换为原字 ...
- Python删除字符串中的空格和特殊字符
介绍字符串中处理空格和特殊字符的方法,特殊字符指制表符\t .回车符\r.换行符\n等. 1.strip() 用于删除字符串左右两侧的空格和特殊字符 语法: str.strip([chars]) ch ...
- python 删除字符串中的所有相邻的重复项
| 删除字符串中的所有相邻的重复项 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们.在 S 上反复执行重复项删除操作,直到无法继续删除.在完成所有重复项删除操作后 ...
- Lc1047删除字符串中所有重复项
删除字符串中所有重复项 利用栈来存储, 遍历字符和当前栈顶元素进行比较,如果栈不为空stack != null,并且等于遍历到的当前元素 == 栈顶元素value = stack[stack.leng ...
- C语言编程>第二十三周 ③ 下列给定程序中,函数fun的功能是:利用插入排序法对字符串中的字符按从小到大的顺序进行排序。插入法的基本算法是:先对字符串中的头两个元素进行排序;然后把第三字符插入
例题:下列给定程序中,函数fun的功能是:利用插入排序法对字符串中的字符按从小到大的顺序进行排序.插入法的基本算法是:先对字符串中的头两个元素进行排序:然后把第三字符插入到前两个字符中,插入后前三个字 ...
- python去掉字符串中的特殊字符和数字
在python数据处理过程中,有时候需要将字符串中的特殊字符和数字进行剔除.我们可以利用正则表达式来轻松的完成它. File "D:\software\python\lib\re.py& ...
- C语言--使用指针实现删除字符串中的空格
本篇主要实现了在C语言使用指针实现删除字符串中的空格,详细内容见下面代码,主要利用指针遍历所得到的字符串,使用一个指针指向字符串首地址,判断其是否为空格,如果是则定义一个临时指针,并遍历之后的所有字符 ...
- (小甲鱼python)字符串系列笔记合集四 第四课、字符串IV总结 删除字符串中(左右)空格 删除指定的前缀或者后缀 字符串以参数指定的分隔符为依据进行切割,将切割后的结果返回一个三元组
一.字符串总结四 1.删除字符串中(左右)空格或者与之匹配的字符串 "字符串".lstrip(char=None) 删除左空格 "字符串".rstrip(cha ...
最新文章
- pg数据库开启远程连接_如何运行远程客户端连接postgresql数据库
- python 日志 装饰器_【Python】装饰器实现日志记录
- PHP去掉诡异的BOM \ufeff JSON开头包含红点
- Shell中的read语句
- ORACLE REPLACE函数
- tensorflow学习笔记:tf.data.Dataset,from_tensor_slices(),shuffle(),batch()的用法
- sublime text3 中 python3编译出现中文乱码解决方法
- 学习型php空间,php开源学习型框架CMVC v1.2.0
- 多线程编程下单例模式与多例模式的使用总结
- lua 面向对象入门
- 关于Mac能连上Wi-Fi但无法上网的问题?方法来啦
- Linux电源管理-Runtime PM
- 触控屏c语言程序,触摸屏编程软件 C-more Micro Programming Software V3.0
- CCPC-WFinal-女生专场
- python词云词频分析_Python数据挖掘:WordCloud词云配置过程及词频分析
- 数据分析有 AI 帮你,Sugar BI 智能分析全场景介绍
- 马云的蚂蚁金服为何如此看重区块链?如何发挥区块链商业优势?
- 解决_CRT_SECURE_NO_WARNINGS 警告
- SAP 小币种金额的转换函数和处理
- win10运行安卓模拟器蓝屏崩溃