我有这个代码,我需要在“media_count”之间做一个正则表达式:和。 这意味着我最终只能使用370606,168,250,67
{"position": 0, "hash": {"media_count": 370606, "name": "fsdfs", "id": 17843681947041535}}, {"position": 34, "hash": {"name": "fsdfsd", "media_count": 168, "id": 17842650601031598}}, {"hashtag": {"name": "fsdfsd", "media_count": 250, "id": 17843868538053719}, "position": 17}, {"position": 7, "hashtag": {"name": "dgdfg", "id": 17854319125027806, "media_count": 67}},
任何事情都会被贬低
答案 0 :(得分:1)
首先,你没有提到一种语言,所以我会给你一个perl答案。
您可以看到有关多个匹配here的问题
其次,对于perl,你的正则表达式将如下所示:
@mc = $your_string =~ /\"media_count\"\:\s*(\d+)/g
我的尝试:
test > perl -p -e '@list = $_ =~ /\"media_count\":\s*(\d+)/g; print "@list \n" ' somefile
370606 168 250 67
答案 1 :(得分:0)
"media_count":(?<=)\s*(\d+)\s*
第1组将包含您要查找的数字
或仅“media_count”之后的数字完全匹配:
(?<="media_count":\s)\d+\s*
答案 2 :(得分:0)
感谢你看到你的代码之后的帮助它才有意义..我最终使用了(?&lt; =&#34; media_count&#34;:)\ s *(\ d +)\ s *