[原创][R语言]股票分析实战[6]:正则表达式提取子字符串

[简介]

常用网名: 猪头三

出生日期: 1981.XX.XX

QQ联系: 643439947

个人网站: 80x86汇编小站 https://www.x86asm.org

编程生涯: 2001年~至今[共22年]

职业生涯: 20年

开发语言: C/C++、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python

开发工具: Visual Studio、Delphi、XCode、Eclipse、C++ Builder

技能种类: 逆向 驱动 磁盘 文件

研发领域: Windows应用软件安全/Windows系统内核安全/Windows系统磁盘数据安全/macOS应用软件安全

项目经历: 磁盘性能优化/文件系统数据恢复/文件信息采集/敏感文件监测跟踪/网络安全检测

[序言]

在股票数据分析中, 根据数据文件的路径进行字符串操作是很常见的方式. 因为股票数据文件名一般都是按照命名格式为: 股票代码-股票名称.txt, 例如: 002431-棕榈股份. 这样做的目的是, 方便后期在提取数据和合并数据时, 可以区分数据是属于那支股票的?

[如何提取"股票代码"呢?]

先使用basename()获取文件名称, 然后再配合gregexec()或regexec() 进行正则表达式""^([0-9]{6})-(.+)\\.txt$""分组提取. 代码如下:

R 复制代码
file_Stock <- "C:/Users/Win11_PHT/Desktop/KLines/002207-准油股份.txt"

# 提取股票名称
File_Name <- basename(file_Stock)
#Stock_Code <- regmatches(File_Name, gregexec("^([0-9]{6})-(.+)\\.txt$", File_Name))
Stock_Code <- regmatches(File_Name, regexec("^([0-9]{6})-(.+)\\.txt$", File_Name))
print(Stock_Code[[1]][2]) # 打印股票代码
print(Stock_Code[[1]][3]) # 打印股票名称

[结尾]

上面的代码要注意一个细节,regmatches()返回的是list类型. 所以针对list类型进行内容定位时, 要特别注意写法.

相关推荐
瞎胡侃1 小时前
Spark读取Apollo配置
大数据·spark·apollo
悻运1 小时前
如何配置Spark
大数据·分布式·spark
懒惰的橘猫1 小时前
Spark集群搭建之Yarn模式
大数据·分布式·spark
2401_824256862 小时前
Spark-Streaming
大数据·分布式·spark
胡耀超2 小时前
附1:深度解读:《金融数据安全 数据安全分级指南》——数据分类的艺术专栏系列
大数据·金融·数据治理·生命周期·数据分类·政策法规
合新通信 | 让光不负所托2 小时前
【合新通信】浸没式液冷光模块与冷媒兼容性测试技术报告
大数据·网络·光纤通信
元6332 小时前
spark和hadoop之间的对比和联系
大数据·hadoop·spark
Chh07152 小时前
《R语言SCI期刊论文绘图专题计划》大纲
开发语言·r语言
cooldream20093 小时前
深入解析大数据的Lambda架构:设计、特点与应用场景
大数据·架构·系统架构师
淋一遍下雨天3 小时前
Spark-Streaming核心编程
大数据·kafka