mongodb - 在 mongodb 聚合中使用正则表达式
问题描述
有一个包含值的集合
_id:ObjectId('......')
ton_id :ObjectId('abcd')
value:qwejc+iejtns/@
date:2019-12-13T07:09:40.075+00:00
_id:ObjectId('......')
ton_id :ObjectId('abcd')
value:asdf+kine
date:2018-1-13T07:09:40.075+00:00
需要一个必需的输出:
之后抓取数据+
_id:ObjectId('......')
ton_id :ObjectId('abcd')
value:iejtns/@
date:2019-12-13T07:09:40.075+00:00
_id:ObjectId('......')
ton_id :ObjectId('abcd')
value:kine
date:2018-1-13T07:09:40.075+00:00
解决方案
您可以使用符号$split
拆分,+
然后$arrayElemAt
获取最后一个索引。
db.collection.aggregate([
{ "$project": {
"value": {
"$arrayElemAt": [{ "$split": ["$value", "+"] }, -1]
}
}}
])
推荐阅读
- amazon-web-services - Auth0 - 我在哪里可以获得 JWT 签名密钥
- deep-learning - 如何在 pointpillars 中使用 tensorboard addgraph
- c# - SwaggerODataSample OrderController Swagger 页面不呈现 {key}/LineItems
- python - 如何使用 pipmaker 上传 python 库?
- javascript - 尝试通过使用 jquery 的 DOM 访问来修改输入值
- flutter - 在 Android Studio 中导入 dart 文件时可以进行智能感知吗?
- javascript - Datepicker JQUERY 不选择输入日期
- java - 如何用读取 txt 文件填充 ArrayList
- verilog - Verilog错误“连续赋值输出必须是网络”
- javascript - 引导标签输入 maxTag 在函数内不起作用