మాడ్యూల్ పాఠాలు (3/4)
URLలు మరియు IPలను సంగ్రహించడం
ఉచిత టెక్స్ట్లో (లాగ్లు, కథనాలు, డంప్లు) URLలుని సంగ్రహించడం సర్వసాధారణం మరియు IP చిరునామాలు. రెండింటికీ బలమైన నమూనాలను చూద్దాం.
http/https URLలు
Pattern: https?:\/\/[\w.-]+(?:\:\d+)?(?:\/[^\s]*)?https?:\/\/-- పథకం,sఐచ్ఛికంతో.[\w.-]+-- హోస్ట్ (డొమైన్, సబ్డొమైన్లు, బహుశాlocalhost).(?:\:\d+)?-- ఐచ్ఛిక పోర్ట్.(?:\/[^\s]*)?-- ఐచ్ఛిక మార్గం, మొదటి వైట్స్పేస్ వరకు.
క్యాప్చర్లు https://example.com, http://localhost:3000/api/users,
https://docs.dev/path?query=value.
IPv4
IPv4 అనేది 4 దశాంశ ఆక్టెట్లు చుక్కలతో వేరు చేయబడ్డాయి:
Pattern: \b(?:\d{1,3}\.){3}\d{1,3}\b"తగినంత మంచిది" సంస్కరణ: ఇది వంటి చెల్లని విలువలను కూడా అంగీకరిస్తుంది
999.999.999.999. స్ట్రిక్ట్ వెర్షన్ కోసం మీకు శ్రేణి ప్రత్యామ్నాయం అవసరం
(25[0-5]|2[0-4]\d|[01]?\d\d?), ఇది చాలా పొడవుగా ఉంటుంది.
Pattern (strict): \b(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\bఖచ్చితత్వం వర్సెస్ క్లుప్తత
URLలు లేదా IPలను సరిపోల్చడానికి బ్యాలెన్సింగ్ ప్యాటర్న్ టాలరెన్స్ అవసరం. కఠినమైన IP వాలిడేటర్ ఏ ఆక్టెట్ 255ను మించలేదని ధృవీకరిస్తుంది. మరోవైపు, ఒక ఆచరణాత్మక ఎక్స్ట్రాక్టర్ సాధారణంగా సరళీకృత నమూనాల కోసం చూస్తుంది మరియు అంకితమైన కోడ్కి చక్కటి ధృవీకరణను అందిస్తుంది.
దీనిని ప్రయత్నించండి
టెక్స్ట్లో ప్రతి http లేదా https URLని కనుగొనండి. పథకం + హోస్ట్ + ఐచ్ఛిక మార్గం.
సూచనను చూపించు
https? ఐచ్ఛిక s కోసం, డొమైన్ కోసం [\\w.-]+ మరియు సమూహం (?:\\/[^\\s]*)? ఐచ్ఛిక మార్గం కోసం.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది
వ్యాయామం సమీక్షించండి
ప్రతి IPv4 (4 దశాంశ ఆక్టెట్లను చుక్కలతో వేరు చేయండి) కనుగొనండి. అనుమతి వెర్షన్, 0-255 చెక్ లేదు.
సూచనను చూపించు
'octet + dot'ని 3 సార్లు పునరావృతం చేయడానికి (?:\\d{1,3}\\.){3}ని ఉపయోగించండి, ఆపై చివరిది కోసం \\d{1,3}.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది
అదనపు సవాలు
Find all IPv4 addresses in the format `X.X.X.X` (composed of four 1-to-3 digit numbers separated by dots).
సూచనను చూపించు
Use \b to enforce boundaries, (?:\d{1,3}\.){3} to repeat the octet and dot three times, and finally \d{1,3}.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది