మాడ్యూల్ పాఠాలు (4/4)
రెజెక్స్తో విభజించండి
String.prototype.split(separator) స్థిరమైన స్ట్రింగ్ను మాత్రమే అంగీకరిస్తుంది
సెపరేటర్గా regex కూడా. ఇది టోకనైజ్ చేయడానికి శక్తివంతమైన సాధనంగా చేస్తుంది
నిర్మాణాత్మక వచనం.
'uno, due,tre quattro'.split(/[,\s]+/);
// ["uno", "due", "tre", "quattro"]రీజెక్స్ /[,\s]+/ "కామా లేదా వైట్స్పేస్లో ఒకటి లేదా అంతకంటే ఎక్కువ" సరిపోలుతుంది: విభజన
ఏదైనా సమ్మేళనం డీలిమిటర్పై విడిపోతుంది.
సాధారణ కేసులు
- అనుమతించబడిన CSV:
text.split(/\s*,\s*/)కామాల చుట్టూ ఖాళీలను నిర్వహించడానికి. - నివ్ టోకెనైజర్: పదాలను సంగ్రహించడానికి
text.split(/\s+/). - సెపరేటర్ని ఉంచండి: regex క్యాప్చర్ గ్రూపులను కలిగి ఉంటే, ది సమూహాల కంటెంట్ ఫలితాల శ్రేణిలో చేర్చబడింది.
'a=1; b=2; c=3'.split(/(;)\s*/);
// ["a=1", ";", "b=2", ";", "c=3"]() సమూహం లేకుండా సెమికోలన్ అదృశ్యమవుతుంది. (;)తో మీరు దానిని ఉంచుకోండి
ఫలితంగా.
స్ప్లిట్ ఆపరేషన్లలో సెపరేటర్లను సంరక్షించడం
మీరు క్యాప్చర్ కుండలీకరణాల్లో స్ప్లిట్ సెపరేటర్లను ఉంచినట్లయితే, String.prototype.split యొక్క అవుట్పుట్ సెపరేటర్లను విస్మరించడానికి బదులుగా తుది శ్రేణిలోని మూలకాలుగా చేర్చబడుతుంది.
దీనిని ప్రయత్నించండి
ప్రతి అనుమతి CSV సెపరేటర్ను కనుగొనండి: దాని చుట్టూ ఐచ్ఛిక ఖాళీలతో కామా. ఈ విధంగా మీరు జాబితాను టోకనైజ్ చేయడానికి స్ప్లిట్లో ఉపయోగించవచ్చు.
సూచనను చూపించు
ఏదైనా ఐచ్ఛిక ఖాళీలను గ్రహించడానికి కామాకు ముందు మరియు తర్వాత \\s*ని ఉపయోగించండి.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది
వ్యాయామం సమీక్షించండి
ప్రతి 'స్పేస్ లేదా సెమికోలన్' సెపరేటర్ను కనుగొనండి (ఒకటి లేదా అంతకంటే ఎక్కువ). ఈ విధంగా విభజన వచనాన్ని పదాలుగా టోకనైజ్ చేస్తుంది.
సూచనను చూపించు
కలపండి \\s మరియు ; + క్వాంటిఫైయర్తో తరగతి [\\s;]లో.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది
అదనపు సవాలు
Write a regex to use in a split that separates numbers while keeping math operators `+`, `-`, `*`, `/` as elements of the array.
సూచనను చూపించు
Enclose the math operators character class in capture parentheses to preserve them in the split array.
3 ప్రయత్నాల తర్వాత పరిష్కారం లభిస్తుంది