Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में स्ट्रिंग की शुरुआत या अंत में टेक्स्ट कैसे मिलान करें

समस्या

मान लीजिए आपको किसी स्ट्रिंग की शुरुआत या अंत में विशिष्ट टेक्स्ट पैटर्न की जांच करने की आवश्यकता है। सामान्य पैटर्न फाइल एक्सटेंशन हो सकते हैं लेकिन यह कुछ भी हो सकता है। मैं आपको कुछ तरीके दिखाऊंगा कि आप यह कैसे कर सकते हैं।

startswith() मेथड

स्ट्रिंग की शुरुआत की जांच करने का एक सरल तरीका startswith() मेथड का उपयोग करना है।

उदाहरण 1:


text = "Is USA colder than Australia?"
print(f"output \n {text.startswith('Is')}")

आउटपुट: True

उदाहरण 2:


filename = "Hello_world.txt"
print(f"output \n {filename.startswith('Hello')}")

आउटपुट: True

उदाहरण 3:


site_url = 'https://www.something.com'
print(f"output \n {site_url.startswith('http:')}")

आउटपुट: False

उदाहरण 4:


print(f"output \n {site_url.startswith('https:')}")

आउटपुट: True

endswith() मेथड

स्ट्रिंग के अंत की जांच करने का एक सरल तरीका endswith() मेथड का उपयोग करना है।

उदाहरण 1:


text = "Is USA colder than Australia?"
print(f"output \n {text.endswith('?')}")

आउटपुट: True

उदाहरण 2:


filename = "Hello_world.txt"
print(f"output \n {filename.endswith('.txt')}")

आउटपुट: True

एकाधिक विकल्पों के लिए टपल का उपयोग

अगर हम उपरोक्त मेथड्स के साथ एकाधिक विकल्पों की जांच करना चाहते हैं तो हमें टपल प्रदान करने की आवश्यकता है। एक सामान्य उपयोग फाइल एक्सटेंशन के लिए जांच करना है - मान लीजिए हमें डायरेक्टरी में ".txt" और ".csv" फाइलों को वैलिडेट करना है।


import os
filenames = os.listdir('.')

# जांचें कि क्या .csv या .txt फाइलें हैं
print(f"output \n {any(name.endswith(('.csv', '.txt')) for name in filenames)}")

आउटपुट: True


# ऐसी फाइलों के नाम प्राप्त करें
[name for name in filenames if name.endswith(('.csv', '.txt'))]

आउटपुट: ['file1.csv', 'HRDataset.csv', 'Input.csv', 'input.txt', ...]

याद रखें ये मेथड्स टपल स्वीकार करते हैं, अगर आपके पास खोजने के लिए विकल्पों की सूची है, तो उन्हें टपल में बदलने की आवश्यकता है।


import os
# विकल्पों की सूची
patters = ['.csv', '.txt']
filenames = os.listdir('.')

# यह एरर देगा क्योंकि list पास किया गया है
# any(name.endswith(patters) for name in filenames)

# सही तरीका - list को tuple में बदलें
any(name.endswith(tuple(patters)) for name in filenames)

आउटपुट: True


[name for name in filenames if name.endswith(tuple(patters))]

आउटपुट: ['file1.csv', 'HRDataset.csv', 'Input.csv', 'input.txt', ...]

अन्य ऑपरेशन्स के साथ संयोजन

startswith() और endswith() मेथड्स अन्य ऑपरेशन्स के साथ संयुक्त होने पर अच्छे लगते हैं, जैसे सामान्य डेटा रिडक्शन। उदाहरण के लिए:


if any(name.endswith(tuple(patters)) for name in filenames):
    # यहां लॉजिक परफॉर्म करें
  1. - Java RegEx का उपयोग करके इनपुट के अंत से मिलान करना

    आप मेटा कैरेक्टर “\\z” का उपयोग करके इनपुट के अंत से मिलान कर सकते हैं। उदाहरण import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Example { public static void main(String args[]) { // उपयोगकर्ता से स्ट्रिंग पढ़ना

  1. Python में कीबोर्ड से कॉपी किया गया टेक्स्ट कैसे पेस्ट करें? Python में कीबोर्ड से कॉपी किया गया टेक्स्ट कैसे पेस्ट करें?

    Python कई बिल्ट-इन लाइब्रेरी और मॉड्यूल प्रदान करता है जो विभिन्न Python एप्लिकेशन विकसित करने में अतिरिक्त सुविधाओं को लागू करने का एक तरीका प्रदान करते हैं। pyperclip किसी भी Python एप्लिकेशन में कॉपी-एंड-पेस्ट ऑपरेशन को लागू करने के लिए क्रॉस-प्लेटफ़ॉर्म Python मॉड्यूल में से एक है। इसे Python एप

  1. - पायथन में स्ट्रिंग का आकार कैसे प्राप्त करें?

    पायथन में len() नामक एक मेथड होता है जो हमें किसी भी कंपोजिट ऑब्जेक्ट की लंबाई देता है। स्ट्रिंग की लंबाई प्राप्त करने के लिए, बस स्ट्रिंग को len() कॉल में पास करें। उदाहरण print(len(Hello World!)) आउटपुट 12 यदि आप स्ट्रिंग का आकार बाइट्स में चाहते हैं, तो आप sys मॉड्यूल से getsizeof() मेथड का उपयोग