Bir karakter setinden özel bir kısmı almak

En az on kere okudum. Sonra iki kere cevap yazmayı düşündüm. Üçüncüde yazacak oldum onu da sildim.

Neden mi?

{} arasına kodlamaktan kastınızın ne olduğunu bir türlü çözemedim.

Eminim siz ne istediğinizi biliyorsunuzdur da ben anlayamıyorum.

{} arasına biçimlendirme direktifleri girebilirsiniz.

Bunlar da sınırlı.

Formatlama type ları bu kadarcık:

Python String format() Method (w3schools.com)

Yani Türkçemiz yetse kesin çözeriz de bir türlü Türkçe anlayamadık.

Yoksa bir metin içinde pattern aramak için örnek kod verecektim.

Dict içinde en çok tekara eden kelimeyi bulmak! - Kategorize - YazBel forumu

Konusundaki,

import re
import string


frequency = {}
document_text = open('metin.txt', 'r')
text_string = document_text.read().lower()
match_pattern = re.findall(r'\b[a-z]{3,15}\b', text_string)
 
for word in match_pattern:
    count = frequency.get(word,0)
    frequency[word] = count + 1
     
frequency_list = frequency.keys()
 
for words in frequency_list:
    print (words, frequency[words])

re.findall

Fonksiyonu ile 3.14 ü pattern olarak tanımlayıp kaç tane geçiyorsa data içinde kolayca bulabilirsiniz.

Bize asıl sorunu söyleyin.

{} içinde çözmek sorunda mıyız yoksa sizin istediğiniz bir data da 3,14 leri istediğiniz formatta bulmak mı istiyorsunuz.

Netleştirin çözen çok katılımcı olacaktır.

Edit:

Python RegEx: re.match(), re.search(), re.findall() with Example (guru99.com)

Buradan re modülü ile yapabileceklerinize örnekler.

Edit:

Hadi buna da örnek vereyim;

import re

s = 'abccba'
ss = 'facebookgooglemsmsgooglefacebook'
p = 'xyzzyx'

def match(s, p):
    nr = {}
    regex = []
    for c in p:
        if c not in nr:
            regex.append('(.+)')
            nr[c] = len(nr) + 1
        else:
            regex.append('\\%d' % nr[c])
    return bool(re.match(''.join(regex) + '$', s))

print(match(s, p))
print(match(ss, p))

Kaynak: Python: Find pattern in a string - Stack Overflow

2 Beğeni