all
This commit is contained in:
parent
086a27dfa3
commit
08f802f8a9
|
@ -1,38 +1,19 @@
|
||||||
import re
|
|
||||||
import sys
|
import sys
|
||||||
|
import re
|
||||||
|
|
||||||
|
|
||||||
def repl(char):
|
def replaceLetter(words):
|
||||||
x = char.group(0)
|
result = ''
|
||||||
output_str = ""
|
for i in words.group(0):
|
||||||
for c in x:
|
if re.search(r'[a-ząćęłńóśźż]', i):
|
||||||
c = c.swapcase()
|
result += i.upper()
|
||||||
output_str += c
|
elif re.search(r'[A-ZĄĆĘŁŃÓŚŹŻ]', i):
|
||||||
return output_str
|
result += i.lower()
|
||||||
|
else:
|
||||||
|
result += i
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
pattern = re.compile(r"\b[a-ząćęłńóśźż]+[A-ZĄĆĘŁŃÓŚŹŻ]+\b|\b[A-ZĄĆĘŁŃÓŚŹŻ]+[a-ząćęłńóśźż]+\b")
|
|
||||||
# f = open("polish_wiki_excerpt.in", "r")
|
|
||||||
|
|
||||||
|
|
||||||
def change_line(word_list, curr_line):
|
|
||||||
for word in word_list:
|
|
||||||
curr_line = curr_line.replace(word, word.swapcase())
|
|
||||||
|
|
||||||
return curr_line.rstrip('\n')
|
|
||||||
|
|
||||||
|
|
||||||
# for line in open("./polish_wiki_excerpt.in", encoding="utf8"):
|
|
||||||
for line in sys.stdin:
|
for line in sys.stdin:
|
||||||
found_words = re.findall(pattern, line)
|
searchRe = re.sub(r'[a-ząćęłńóśźż]+\w*[A-ZĄĆĘŁŃÓŚŹŻ]+\w*|[A-ZĄĆĘŁŃÓŚŹŻ]+\w*[a-ząćęłńóśźż]+\w*', replaceLetter, line)
|
||||||
out = change_line(found_words, line)
|
print(searchRe, end='')
|
||||||
if out:
|
|
||||||
print(out)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@ import re
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
for line in sys.stdin:
|
for line in sys.stdin:
|
||||||
line = re.sub(r'(\D*)([0-9]+)(\D+)([0-9]+).*', r'\1\2\3\5', line)
|
line = re.sub(r'(\D*)([0-9]+)(\D+)([0-9]+)(.*)', r'\1\2\3\5', line, 1)
|
||||||
sys.stdout.write(line)
|
sys.stdout.write(line)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
#!/bin/bash
|
||||||
|
python TaskD05/run.py "$@"
|
|
@ -0,0 +1,14 @@
|
||||||
|
import sys
|
||||||
|
import re
|
||||||
|
|
||||||
|
|
||||||
|
def replaceLetters(words):
|
||||||
|
result = words.group(1)
|
||||||
|
for i in words.group(2):
|
||||||
|
result += 'x'
|
||||||
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
for line in sys.stdin:
|
||||||
|
replaceXin3rdPos = re.sub(r'^(\W*\w+\W+\w+\W+)(\w+)', replaceLetters, line, 1)
|
||||||
|
print(replaceXin3rdPos, end='')
|
Loading…
Reference in New Issue