मैंने एक रेगेक्स बनाया है जो मान 10, 10GB को मान्य करता है ..... मैं इसे कुछ इस तरह से ठीक करना चाहता हूं जैसे इसे मान 10 नहीं लेना चाहिए। रेगेक्स: "^\d+(\.\d\d?)?\s* (बी|[केएमजीटीपी]बी|%)?$"

सादर NewDev

-2
NewDev 2 जून 2011, 17:42
कृपया अधिक स्पष्ट रूप से समझाने का प्रयास करें कि आप अपने रेगुलर एक्सप्रेशन से क्या मिलान करना चाहते हैं।
 – 
maple_shaft
2 जून 2011, 17:46
यह नियमित अभिव्यक्ति मान 10 को मान्य करती है, जिसे मैं नहीं चाहता कि यह मान्य हो
 – 
NewDev
2 जून 2011, 17:47

1 उत्तर

बस छुटकारा पाएं? (बी|[केएमजीटीपी]बी|%) बिट के बाद और यह इरादा के अनुसार काम करेगा। \s के बाद * को भी बदलना चाह सकते हैं? इसलिए यह "10_____B" से मेल नहीं खाता। (जहाँ _ स्पेस है)

"^\d+(\.\d\d?)?\s?(B|[KMGTP]B|%)$"
1
John Gaines Jr. 2 जून 2011, 17:48
मुझे लगता है कि आपका रेगेक्स अभी भी "10 बी" से मेल खाता है और मुझे लगता है कि वह इसे चाहता है, लेकिन \ s * का तात्पर्य है कि वह संख्या के बाद किसी भी संख्या में रिक्त स्थान की अनुमति देना चाहता है
 – 
murgatroid99
2 जून 2011, 17:51
समझा। आपके उदाहरण स्ट्रिंग में एकाधिक रिक्त स्थान होने से पहले मैंने अपनी टिप्पणी पोस्ट की थी।
 – 
murgatroid99
2 जून 2011, 18:01
हाय मैं चाहता हूं कि रेगेक्स 10 बी, 10 जीबी, 10 केबी, 10 एमबी, 10%, 10TP . जैसे मानों पर मान्य हो
 – 
NewDev
2 जून 2011, 18:03