જ્યારે અન્ય ઘણા લેખો ડેટા કેવી રીતે બહાર કા .વા તે અંગેનો લેખ કરે છે આ લેખ સમજાવે છે કે કેવી રીતે કાractedવામાં આવેલા ડેટાને શુદ્ધ કરી શકાય છે તેથી ફક્ત ઇચ્છિત માહિતી જ બાકી છે. આ કરવા માટે ખાસ Criteria
પદ્ધતિઓનો ઉપયોગ કરવામાં આવે છે જ્યારે નીચેના તમામ ઉદાહરણોમાં ડેટા એચટીએમએલ કોષ્ટકમાંથી કા extવામાં આવે છે, આ ડેટા વિવિધ સામગ્રીમાંથી વિવિધ માહિતીમાંથી બહાર કાractedી શકાય છે જ્યાં સુધી ડેટા કન્ટેન્ટ ડિવ્સ, સ્પાન્સ, ઈમેજો વગેરેના દરેક સ્રોત સમાન લંબાઈના હોય.
નીચે આ કોષ્ટકમાં આ કોષ્ટકનો સમાવેશ થાય છે, જેમાં ચાર કોલમ શામેલ છે શીર્ષક, લેખક, પુસ્તક ઉંમર અને સ્થિતિ.
શીર્ષક | લેખક | પુસ્તક ઉંમર | સ્થિતિ |
---|---|---|---|
કેવી રીતે બગીચો | જ્હોન | 5 | પ્રકાશિત |
કેમેરાનો ઉપયોગ કેવી રીતે કરવો | સારાહ | 0 | અપૂર્ણ |
કેમેરાનો ઉપયોગ કેવી રીતે કરવો | સારાહ | 0 | અપૂર્ણ |
ખગોળશાસ્ત્ર સરળ બનાવ્યું | ડોમિનિક | 1 | સમીક્ષા હેઠળ |
કેવી રીતે આયર્ન | પોલ | 1 | સમીક્ષા હેઠળ |
કઇ રીતે દોરવુ | માઇક | 3 | પ્રકાશિત |
પીસીનો ઉપયોગ કેવી રીતે કરવો | રશેલ | 4 | પ્રકાશિત |
var titles = Page.getTagValues({"position":1,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var authors = Page.getTagValues({"position":2,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var ages = Page.getTagValues({"position":3,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}}); var statuses = Page.getTagValues({"position":4,"tag":{"equals":"td"},"parent":{"tag":{"equals":"tr"}}});
ઘણીવાર સ્ક્રpedપ કરેલા ડેટાને શુદ્ધ કરવાની જરૂર હોય છે જેથી તેમની પાસે ફક્ત જરૂરી માહિતી હોય. આ તે છે જ્યાં Criteria
કાર્યો વપરાય છે. દાખલા તરીકે જો ફક્ત પ્રકાશિત પુસ્તકોની જ આવશ્યકતા હોય તો તમારે ઉપરના સ્ટેટ્યુસ સ્તંભને પ્રકાશિત કરવા માટે મર્યાદિત કરવાની જરૂર છે અને પછી તે ફેરફારોને નીચે બતાવ્યા પ્રમાણે અન્ય ક columnલમ ડેટા પર લાગુ કરો.
Criteria.create(); statuses = Criteria.equals(statuses, "Published"); titles = Criteria.apply(titles); authors = Criteria.apply(authors); ages = Criteria.apply(ages);
ઉપયોગ કરતી વખતે Criteria
ડેટાને ઘટાડવા માટેની પદ્ધતિઓ, તે પહેલાં, એક સમયે એક જ સ્તંભ પર બધા ફેરફારો લાગુ થવું આવશ્યક છે apply
પદ્ધતિનો ઉપયોગ અન્ય કોઈપણ કumnsલમ પર કરવામાં આવે છે કે જેને સંબંધિત રેકોર્ડ્સ કા .ી નાખવા પડે છે. એકવાર પૂર્ણ કરો Criteria.create()
અન્ય કumnsલમ માટે માપદંડ નક્કી કરતા પહેલા મેથડ બોલાવવી પડશે. તે આ કારણને કારણે છે કે તેને ક callલ કરવો શ્રેષ્ઠ પ્રથા છે Criteria.create()
કોઈપણ અન્ય માપદંડ પદ્ધતિઓ પહેલાં.
ઉદાહરણમાં સ્ટેટસ ક columnલમ ફક્ત સમાવવા માટે મર્યાદિત કરવામાં આવી છે પ્રકાશિત, પછી ઉપયોગ કરીને Criteria.apply
બધી ક colલમ્સને સતત રાખવા માટે, અન્ય ત્રણ ક methodલમ્સમાં સંબંધિત રેકોર્ડ્સને પણ દૂર કરવામાં આવી છે. યાદ રાખો કે અરજી કરવાની પદ્ધતિ ફક્ત ત્યારે જ ઉપયોગી છે જો વિવિધ ક colલમ્સમાં સમાન સંખ્યામાં રેકોર્ડ હોય.
બહુવિધ રીતે ડેટાને પ્રતિબંધિત કરવા ક્રાયટિરીયા પણ એક સાથે થઈ શકે છે. નીચેનું ઉદાહરણ પુસ્તકની વય ક columnલમનો ઉપયોગ એક કરતાં વધુ જૂની પરંતુ પાંચ વર્ષથી ઓછી ઉંમરના પુસ્તકો પર પ્રતિબંધિત કરે છે Criteria.lessThan()
અને Criteria.greaterThan()
પદ્ધતિઓ
Criteria.create(); ages = Criteria.greaterThan(ages, 1); ages = Criteria.lessThan(ages, 5); titles = Criteria.apply(titles); authors = Criteria.apply(authors); statuses = Criteria.apply(statuses);
કેટલીકવાર ડુપ્લિકેટ ડેટા હોય છે જેને દૂર કરવાની જરૂર હોય છે, આ માહિતીને દૂર કરવા માટે તમે આનો ઉપયોગ કરી શકો છો Criteria.unique
પદ્ધતિ
Criteria.create(); titles = Criteria.unique(titles); authors = Criteria.apply(authors); ages = Criteria.apply(ages); statuses = Criteria.apply(statuses);
હવે શીર્ષક પતન પર આધારિત કોઈપણ ડુપ્લિકેટ પંક્તિઓ દૂર કરવામાં આવશે. આગળની પદ્ધતિ છે Criteria.remove
પદ્ધતિ. આ એ ક columnલમમાંથી આઇટમ્સને દૂર કરે છે જો તે ક foundલમ મૂલ્યો એરે પરિમાણમાં મળે છે.
var authorsToRemove = ["Mike","Rachel"]; Criteria.create(); authors = Criteria.remove(authors, authorsToRemove); titles = Criteria.apply(titles); ages = Criteria.apply(ages); statuses = Criteria.apply(statuses);
અહીં લેખકોના ક columnલમમાં માઇક અને રશેલ સમાન બધાય બધા રેકોર્ડ લાગુ કરવાની પદ્ધતિને દૂર કરવામાં આવે છે અને તે પછી અન્ય કumnsલમ્સમાંથી સંબંધિત રેકોર્ડ્સને દૂર કરે છે.