我在一个很大的sql表(MariaDB)中有一个json列(FullText),我需要使用regexp对其进行查询,而没有JSON_EXTRACT函数。 通常,架构包含一个包含相似架构数组的属性,我只需要匹配第一级的属性。
我尝试将“ title:\'Title1 \'”匹配此正则表达式首次出现在“ relatedArticles”之前。
^。*?(title:\“ Title1 \”)。+?(?= relatedArticles)
但它也与其他文章的relatedArticles数组中存在的模式匹配。
{
id: 1,
title: 'Title1',
description: 'Lorem ipsum dolor sit amet...',
relatedArticles: [
{
id: 10,
title: 'Title10',
description: 'Lorem ipsum dolor sit amet...10',
relatedArticles: null
},
{
id: 9,
title: 'Title9',
description: 'Lorem ipsum dolor sit amet...9',
relatedArticles: null
}
]
},
{
id: 17,
title: 'Title17',
description: 'Lorem ipsum dolor sit amet...17',
relatedArticles: [
{
id: 7,
title: 'Title7',
description: 'Lorem ipsum dolor sit amet...7',
relatedArticles: null
},
{
id: 1,
title: 'Title1',
description: 'Lorem ipsum dolor sit amet...',
relatedArticles: null
}
]
}
我需要一个正则表达式来匹配json模式第一级中的任何“ property:'value'”字符串,如果我的字符串与其他级别匹配则返回“ no match”。