मुझे रेगेक्स का उपयोग करके एक विशिष्ट यूआरएल पैटर्न की जांच करने की ज़रूरत है और यह सुनिश्चित नहीं है कि दृष्टिकोण क्या होगा लेकिन मुझे लगता है कि यह इस मामले के लिए बहुत जटिल नहीं होना चाहिए और इसलिए रेगेक्स पसंदीदा समाधान होगा। मुझे बस यह जांचना है कि सटीक तार #, shares और assets उपयुक्त स्लॉट में हैं, उदाहरण के लिए: http://some-domain.com/#/shares/a454-rte3-445f-4543/assets

यूआरएल में सब कुछ परिवर्तनीय (प्रोटोकॉल, डोमेन, पोर्ट, शेयर आईडी) हो सकता है, सटीक स्ट्रिंग्स को छोड़कर जो मैं ढूंढ रहा हूं और स्लॉट (स्लैश पोजीशन) जिस पर वे दिखाई देते हैं।

आपकी सहायताके लिए धन्यवाद!

-1
andriusain 29 अप्रैल 2020, 10:33

3 जवाब

आप उपयोग कर सकते हैं

/^https?:\/\/some-domain\.com\/#\/shares\/[^/]+\/assets/i

enter image description here

let url = `http://some-domain.com/#/shares/a454-rte3-445f-4543/assets`

let matched = /^https?:\/\/some-domain\.com\/#\/shares\/[^/]+\/assets/i.test(url)

console.log(matched)
0
Maxim Mazurok 29 अप्रैल 2020, 10:53
वह भी चाहता है /https?/
 – 
Maxim Mazurok
29 अप्रैल 2020, 10:52
बस एस जोड़ें? यह पर्याप्त होगा, और इस प्रकार की आवश्यकताओं को प्रश्न के साथ ही जाना चाहिए
 – 
Code Maniac
29 अप्रैल 2020, 10:53
1
मुझे पता है, मेरा जवाब और टिप्पणियां देखें, सवाल स्पष्ट नहीं है ...
 – 
Maxim Mazurok
29 अप्रैल 2020, 10:54
लोगों को भ्रम के लिए खेद है, मैंने सवाल अपडेट कर दिया है।
 – 
andriusain
29 अप्रैल 2020, 11:03

यह काम करना चाहिए:

/^http:\/\/some-domain\.com\/#\/shares\/(?:[a-z0-9]+-){3}(?:[a-z0-9]+)\/assets$/

डेमो: https://regex101.com/r/Cw8Swx/1


या यह: /#\/shares\/.*\/assets/

डेमो: https://regex101.com/r/Cw8Swx/2


या यह: https?:\/\/.*\/#\/shares\/.*\/assets

डेमो: https://regex101.com/r/Cw8Swx/3

-1
Maxim Mazurok 29 अप्रैल 2020, 10:46
धन्यवाद, यह आदर्श नहीं होगा क्योंकि उन सटीक तारों और स्लैश को छोड़कर सबकुछ परिवर्तनीय होगा। क्षमा करें अगर मैंने खुद को ठीक से समझाया नहीं है
 – 
andriusain
29 अप्रैल 2020, 10:40
अद्यतन उत्तर देखें, उदाहरण भी निर्दिष्ट करें यदि वह आपके लिए काम नहीं करता है
 – 
Maxim Mazurok
29 अप्रैल 2020, 10:43
शुक्रिया! क्या वह भी http या https के बाद 2 स्लैश के लिए जिम्मेदार है?
 – 
andriusain
29 अप्रैल 2020, 10:44
अब यह करता है, अद्यतन उत्तर देखें
 – 
Maxim Mazurok
29 अप्रैल 2020, 10:46
क्या तीसरा डेमो आपकी ज़रूरतों को पूरा करता है?
 – 
Maxim Mazurok
29 अप्रैल 2020, 11:04

रेगेक्स से बचने और इसके बजाय इसे इस तरह से करने का फैसला किया।

const urlParts = window.location.href.split('/');
if (urlParts[3] === '#' && urlParts[4] === 'shares' && urlParts[6] === 'assets') {
 // code goes here...
}

0
andriusain 30 अप्रैल 2020, 08:01