डार्ट को RegExp का उपयोग करके स्ट्रिंग से ट्रैक एलिमेंट मिलता है
Nov 28 2020
जब हम हमारी वेबसाइट url से डेटा पुनः प्राप्त करते हैं, तो इस आउटपुट को बाकी एपीआई फ़ील्ड में लौटाते हैं और मैं यह देखने की कोशिश करता हूं कि क्या tracks
यह निहित है कि मुझे उससे url मिल रहा है, जो इस निम्न tracks
स्रोत में है जिसे मुझे प्राप्त करने की आवश्यकता है
String test = """
<div class=\"wp-playlist wp-audio-playlist wp-playlist-light\">\n
<div class=\"wp-playlist-current-item\"></div>\n
<p>\t\t<audio controls=\"controls\" preload=\"none\" width=\"\n\t\t\t\t1118\t\"\n\t\t>
</audio></p>\n<div class=\"wp-playlist-next\"></div>\n<div class=\"wp-playlist-prev\">
</div>\n<p>\t<noscript></p>\n<ol>\n<li>
<a href='https://www.caferilik.com/wp-content/uploads/2020/11/Anne-Baba-Biz-Suçluyuz-Muhafazakar-Ailelerde-Kuşak-Çatışması-Sesli-Kitap-www.caferilik.com_.mp3'>
Anne Baba Biz Suçluyuz - Muhafazakar Ailelerde Kuşak Çatışması (Sesli Kitap) www.caferilik.com<
/a></li>\n</ol>\n<p>\t</noscript><br />\n\t
<script type=\"application/json\" class=\"wp-playlist-script\">
{\"type\":\"audio\",\"tracklist\":true,\"tracknumbers\":true,\"images\":true,\"artists\":true,
\"tracks\":[{\"src\":\"https:\\/\\/www.caferilik.com\\/wp-content\\/uploads\\/2020\\/11\\/Anne-Baba-Biz-Su\\u00e7luyuz-Muhafazakar-Ailelerde-Ku\\u015fak-\\u00c7at\\u0131\\u015fmas\\u0131-Sesli-Kitap-www.caferilik.com_.mp3\",
\"type\":\"audio\\/mpeg\",\"title\":\"Anne Baba Biz Su\\u00e7luyuz - Muhafazakar Ailelerde Ku\\u015fak \\u00c7at\\u0131\\u015fmas\\u0131 (Sesli Kitap) www.caferilik.com\",\"caption\":\"\",
\"description\":\"\\\"Anne Baba Biz Su\\u00e7luyuz - Muhafazakar Ailelerde Ku\\u015fak \\u00c7at\\u0131\\u015fmas\\u0131 (Sesli Kitap) www.caferilik.com\\\".\",\"meta\":{\"length_formatted\":\"2:28:02\"},
\"image\":{\"src\":\"https:\\/\\/www.caferilik.com\\/wp-includes\\/images\\/media\\/audio.png\",\"width\":48,\"height\":64},\"thumb\":
{\"src\":\"https:\\/\\/www.caferilik.com\\/wp-includes\\/images\\/media\\/audio.png\",\"width\":48,\"height\":64}}]}</script>\n</div>\n
""";
test = test.replaceAll('\n', '').replaceAll('\t', '').replaceAll('\\', '');
मुझे स्ट्रिंग से RegExp
प्राप्त करने के लिए कई मिल सकते हैं link
लेकिन मुझे इसका स्रोत प्राप्त करने की आवश्यकता हैtracks
जवाब
1 RyszardCzech Nov 28 2020 at 22:42
उपयोग
"tracks":\[{"src":"([^"]+)
प्रमाण देखें । जब आप इसे कोड के अंदर रखते हैं, तो आवश्यक मूल्य पहले समूह में होगा।
व्याख्या
--------------------------------------------------------------------------------
"tracks": '"tracks":'
--------------------------------------------------------------------------------
\[ '['
--------------------------------------------------------------------------------
{"src":" '{"src":"'
--------------------------------------------------------------------------------
( group and capture to \1:
--------------------------------------------------------------------------------
[^"]+ any character except: '"' (1 or more
times (matching the most amount
possible))
--------------------------------------------------------------------------------
) end of \1