[原创][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类型进行内容定位时, 要特别注意写法.

相关推荐
武子康2 小时前
大数据-100 Spark DStream 转换操作全面总结:map、reduceByKey 到 transform 的实战案例
大数据·后端·spark
expect7g3 小时前
Flink KeySelector
大数据·后端·flink
阿里云大数据AI技术19 小时前
StarRocks 助力数禾科技构建实时数仓:从数据孤岛到智能决策
大数据
Lx3521 天前
Hadoop数据处理优化:减少Shuffle阶段的性能损耗
大数据·hadoop
武子康1 天前
大数据-99 Spark Streaming 数据源全面总结:原理、应用 文件流、Socket、RDD队列流
大数据·后端·spark
阿里云大数据AI技术2 天前
大数据公有云市场第一,阿里云占比47%!
大数据
Lx3522 天前
Hadoop容错机制深度解析:保障作业稳定运行
大数据·hadoop
T06205142 天前
工具变量-5G试点城市DID数据(2014-2025年
大数据
向往鹰的翱翔2 天前
BKY莱德因:5大黑科技逆转时光
大数据·人工智能·科技·生活·健康医疗
鸿乃江边鸟2 天前
向量化和列式存储
大数据·sql·向量化