मैं यूआरएल क्वेरी स्ट्रिंग से कुछ पैरामीटर हटाने की कोशिश कर रहा हूं।यूआरएल क्वेरी से पैरामीटर कैसे निकालें?
मैं मानकों की एक सरणी हटाया जा करने के लिए है:
var queryParamsToRemove = ['destination','formName'];
मैं क्या करने की कोशिश कर रहा था, यूआरएल में प्रत्येक पैरामीटर के लिए खोज है, और एक RegExp
उपयोग करके उसे निकाल। कुछ ऐसा:
for (param in queryParamsToRemove){
patt = new RegExp(param,'g');
queryString = queryString.replace('&' + patt + '=' + /*?=&/g,'');
}
लेकिन यह वाक्यविन्यास समस्याओं के कारण काम नहीं करता है, मुझे लगता है।
for (param in queryParamsToRemove){
queryString = queryString.replace(new RegExp('[&\?]' + queryParamsToRemove[param] + '=.*(&?)', 'g'), '\1');
}
यही काम करना चाहिए:
उस उत्तर के लिए आपको बहुत बहुत धन्यवाद। एक बात - पहला छोटा हिस्सा कुंजी को ठीक से हटा देता है, लेकिन मानों को जगह में रखता है। यदि इसे संशोधित करना संभव है तो यह मूल्यों को भी हटा देता है और उस साधारण कार्य के लिए लंबे कोडिंग से बचता है ... :) – yogev
यदि आप रेगेक्स की बात करते हैं, तो जैसा कि मैंने कहा था कि यह सबसे अच्छा और केवल विचार नहीं था मूल्य के लिए अक्षर ... आपको मानों को सही ढंग से पहचानने के लिए रेगेक्स को संशोधित करने की आवश्यकता होगी (जो कि एक जटिल कार्य हो सकता है, जब तक कि आप नेट पर इसके लिए एक तैयार रेगेक्स नहीं पाते) – Colandus
मेरी क्वेरी स्ट्रिंग है: formGeneratorNative.php? 1 = 1 और चौड़ाई = 1920 और ऊंचाई = 9 7 9 और डिवाइस = टैबलेट और isEmulator = झूठी और डिवाइस श्रेणी = 3 और गंतव्य = lobbyWrapper.php और formName = लॉगिन तो मान वास्तव में शब्द हैं।मुझे समझ में नहीं आता कि क्यों हटाया नहीं जा रहा है ... – yogev