आपकी जरूरत regex है /(.)\1{9,}/।
परीक्षा:
#!perl
use warnings;
use strict;
my $regex = qr/(.)\1{9,}/;
print "NO" if "abcdefghijklmno" =~ $regex;
print "YES" if "------------------------" =~ $regex;
print "YES" if "========================" =~ $regex;
यहाँ \1इसे एक बैकरेन्सी कहा जाता है। यह संदर्भ देता है कि .कोष्ठक के बीच डॉट द्वारा क्या पकड़ा गया है (.)और फिर {9,}एक ही वर्ण के नौ या अधिक के लिए पूछता है। इस प्रकार यह किसी एक वर्ण के दस या अधिक मेल खाता है।
यद्यपि उपरोक्त परीक्षण स्क्रिप्ट पर्ल में है, यह बहुत ही मानक रेगेक्स सिंटैक्स है और इसे किसी भी भाषा में काम करना चाहिए। कुछ वेरिएंट में आपको अधिक बैकस्लैश का उपयोग करने की आवश्यकता हो सकती है, जैसे Emacs आपको \(.\)\1\{9,\}यहां लिखेंगे ।
यदि एक पूरी स्ट्रिंग में 9 या अधिक समान अक्षर शामिल होने चाहिए, तो पैटर्न के आसपास एंकर जोड़ें:
my $regex = qr/^(.)\1{9,}$/;