求教正则表达式问题

koumingjie 2016-07-06 11:58:37
数据类型如下
1、S S 0.3020 g

2、S D S S 0.3120 g

3、S S DA

4、S S 0.3020 g S S 0.3021 g

求教如何提取出 S S后面的数字,不是数字的不提取
结果
1、 0.3020
2、 0.3020
3、 不提取
4、 0.3020 0.3021
...全文
205 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
x8bits 2016-07-06
  • 打赏
  • 举报
回复
S S\s+(?<value>[-+]?[0-9]+\.[0-9]+) 取value部分
crystal_lz 2016-07-06
  • 打赏
  • 举报
回复

Match m = Regex.Match(yourtext,@"S S\s+(?<number>\d+(\.\d+)?)");
m.groups["number"].Value;
  • 打赏
  • 举报
回复
@"S\s*S\s*(?<num>\d+(?:\.\d+)?)"
不懂得是你前面的1,2,3,4这种也要保留? 如果是的话你可以先通过
Regex.Split(txt,@"[\r\n]+")
分割后,再一行行匹配?
内容概要:本文系统梳理了多个科研领域的前沿研究与技术实现,重点涵盖FDTD方法中的完美匹配层(PML)研究,以及Matlab/Simulink在电磁、电力、控制、通信、信号处理、图像处理、路径规划、能源系统优化等领域的仿真与算法实现。文中列举了大量基于Matlab和Python的科研案例,如风电功率预测、负荷预测、无人机三维路径规划、电池系统故障诊断、雷达模拟、通信编码、微电网优化调度等,并强调结合智能优化算法(如粒子群、遗传算法、深度学习等)提升系统性能。同时,提供了丰富的代码资源与仿真模型,涵盖永磁同步电机控制、逆变器设计、多智能体任务分配、虚拟电厂调度等复杂系统,助力科研人员快速开展复现实验与创新研究。; 适合人群:具备一定编程基础,熟悉Matlab/Python工具,从事电气工程、自动化、通信、人工智能、新能源、控制科学等相关领域研究的研发人员及研究生。; 使用场景及目标:① 学习并实现FDTD仿真中的PML边界条件以有效抑制数值反射;② 掌握Matlab/Simulink在多物理场建模、控制系统设计与优化算法中的综合应用;③ 借助提供的代码资源完成科研复现、课程设计、竞赛项目或工程原型开发; 阅读建议:此资源以科研实战为导向,不仅提供理论方法,更强调代码实现与仿真验证。建议读者结合自身研究方向,按目录顺序查阅相关模块,下载配套代码进行调试与二次开发,以达到学以致用、融会贯通的目的。

111,132

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧