Apple开发_移除OC代码中的注释、空白行

发布时间 2023-03-31 01:07:56作者: CH520
import re
import os

# 功能:
#       在当前文件夹下,处理.h类文件
#		移除OC代码中的注释
#		移除文件中的空白行

# 获取当前文件夹路径
folder_path = os.getcwd()

# 获取该文件夹下的所有文件和文件夹
dir_list = os.listdir(folder_path)

# 遍历所有文件和文件夹
for file_name in dir_list:
	# 判断是否是文件
	if os.path.isfile(os.path.join(folder_path, file_name)):
		# 判断文件类型是否为txt
		if file_name.endswith('.h'):
			print(file_name)
			# 打开OC代码文件
			with open(file_name, 'r') as f:
				contents = f.read()

			# 移除单行注释
			contents = re.sub('//.*?\n', '\n', contents, flags=re.S)
			# 移除多行注释
			contents = re.sub('/\*.*?\*/', '', contents, flags=re.S)
			# 移除空白行
			contents = "\n".join([line for line in contents.splitlines() if line.strip()])
			# 替换'@property ('为'@property(',忽略空格
			contents = re.sub(r'@property\s*\(', '@property(', contents)

			# 写入修改后的文件
			with open(file_name, 'w') as f:
				f.write(contents)
			    
print('注释已全部移除!')