matlab - 将字符串转换为特定格式的数组
问题描述
我有一串格式
"'Year'-'Month'-'Day'T'Hour':'Minute':'Second'Z"
例如'2020-11-26T16:56:09.676Z'
(注意毫秒被认为是秒的一部分)
我想将其转换为以下格式:
t1 = 1x6
2020 11 26 16 56 09.676
或者换句话说,一个 1x6 数组。
注意:这是使用 MatLab 完成的。
解决方案
你可以
regexp
与输入标志一起使用可'match'
将数字检测为一位或多位数字 (\d+
),可选地后跟一个小数点 (\.?
),然后是零位或多位数字 (\d*
)。这将给出一个字符串元胞数组。- 适用
str2double
于将字符串转换为数字。这将给出一个数字行向量。
s = '2020-11-26T16:56:09.676Z';
result = str2double(regexp(s, '\d+\.?\d*', 'match'));
推荐阅读
- angularjs - 如何在javascript中编辑文件对象
- html - html前缀命名空间冲突
- excel - Excel - 如何连接到另一个 Excel 文件?
- ajax - 如何将加载器微调器添加到我的自定义 .js 中?
- css - 如何从 .NET Core 中的主视图和单个视图捆绑 CSS?
- sockets - perl6 IO::Socket::INET 无法从套接字接收数据:对等方重置连接
- mocking - phpunit:模拟类型提示的抽象类?
- c# - 在 2 个项目之间共享包的最佳实践?
- android - 从 AsyncTask 内部动态更新 RecycleView
- powershell - 带有 -ArgumentList 的 Start-Process cmdlet 抛出“无效参数”错误