こんな感じという事で、お願い致します。
どんな感じかというと・・・
PowerShell 7.4.1
PS C:\xampp\htdocs\my_python> & 'c:\Python\python.exe' 'c:\Users\tatty\.vscode\extensions\ms-python.debugpy-2024.0.0-win32-x64\bundled\libs\debugpy\adapter/../..\debugpy\launcher' '62992' '--' 'C:\xampp\htdocs\my_python\py_seiki.py'
s= aaa@xxx.com xxx.yyy@localhost bbb@yyy.net B.1_0-0.bb@xy.z.com ccc@zzz.org
t= ['aaa@xxx.com', 'B.1_0-0.bb@xy.z.com']
tt= ['xxx.yyy@localhost']
t= ['aaa@xxx.com', 'B.1_0-0.bb@xy.z.com', 'xxx.yyy@localhost']
u= []
v= [('aaa@xxx.com', 'aaa', 'xxx', 'com'), ('B.1_0-0.bb@xy.z.com', 'B.1_0-0.bb', 'xy.z', 'com')]
print is= [('aaa', 'xxx', 'com'), ('B.1_0-0.bb', 'xy.z', 'com')]
maching= aaa@xxx.com
macing= ['xxx', 'com']
macing= ['xxx', 'net.jp']
my_midoll= xxx.net.jp
my_cng= aaa@xxx.net.jp
next
maching= B.1_0-0.bb@xy.z.com
macing= ['xy', 'z', 'com']
macing= ['xy', 'z', 'net.jp']
my_midoll= xy.z.net.jp
my_cng= B.1_0-0.bb@xy.z.net.jp
next
maching= xxx.yyy@localhost
macing= ['localhost']
my_cng= xxx.yyy@localhost.net.jp
next
my_cng_str= aaa@xxx.net.jp xxx.yyy@localhost bbb@yyy.net B.1_0-0.bb@xy.z.net.jp ccc@zzz.org
my_urls= http://www.yahoo.com ,https://www.yahoo.com/あいう ai/
,http://www.yahoo.co.jp
,https://www.yahoo.co.jp
chngi_urls= <a href"http://www.yahoo.com">http://www.yahoo.com</a> ,<a href"https://www.yahoo.com/あいう">https://www.yahoo.com/あいう</a> ai/
,<a href"http://www.yahoo.co.jp">http://www.yahoo.co.jp</a>
,<a href"https://www.yahoo.co.jp">https://www.yahoo.co.jp</a>
PS C:\xampp\htdocs\my_python>
メアドの記号の必要要素が足りないかも知れません。
u は一致が無い==0
urlは全角空白で切れます。
以下、参考
import re
s = 'aaa@xxx.com xxx.yyy@localhost bbb@yyy.net B.1_0-0.bb@xy.z.com ccc@zzz.org'
print("s=",s)
t = re.findall(r'[0-9a-zaA-Z\_\-\.]+@[0-9a-zaA-Z\_\-\.]+com', s) #もう少し要素がある場合は、()で囲む
print("t=",t)
tt=re.findall(r'[0-9a-zaA-Z\_\-\.]+@localhost', s)
print("tt=",tt)
t = t+tt
print("t=",t)
u=re.findall(r'[0-9a-zA-Z\_\-\.]+@[0-9a-zaA-Z\_\-\.]+coms', s)
print("u=",u)
v =re.findall(r'(([0-9a-zaA-Z\_\-\.]+)@([0-9a-zaA-Z\_\-\.]+)\.(com))', s)
print("v=",v)
print("print is=",re.findall(r'([0-9a-zaA-Z\_\-\.]+)@([0-9a-zaA-Z\_\-\.]+)\.(com)', s))
#
if len(t)==0 and len(u) == 0:
print("None")
elif len(u)>0:
for mymach in u:
print("maching=",mymach)
my_mach_line =mymach.split('@')
print("macing=",my_mach_line)
my_mach =my_mach_line[1].split('.')
print("mach is=",my_mach)
my_cng = my_mach_line[0]+'@'+my_mach[0]+'.net.jp'#これは@xy.z.com->@xy.net.jp 下を使っ使っている確定型のみ\.comのみ
print("my_cng=",my_cng)
print("next")
else:
for mymach in t:
print("maching=",mymach)
my_after = mymach.split('@')
my_mach_line =my_after[1].split('.')
print("macing=",my_mach_line)
if len(my_mach_line )==1:
my_mach_line[0] += '.net.jp'
my_cng = my_after[0]+'@'+my_mach_line[0]#これは@localhost->@localhost.net.jp
else:
my_mach_line[len(my_mach_line )-1] = 'net.jp'#これは@xy.z.com->@xy.z.net.jp
print("macing=",my_mach_line)
my_midoll='.'.join(my_mach_line)
print("my_midoll=",my_midoll)
my_cng = my_after[0]+'@'+my_midoll
print("my_cng=",my_cng)
print("next")
# 以下のように置換す
my_cng_str=re.sub(r'([0-9a-zA-Z\.]+@[a-z\.]+\.)com',"\\1"+"net.jp", s)
print("my_cng_str=",my_cng_str)
# URLのタグへの変換
my_urls = "http://www.yahoo.com ,https://www.yahoo.com/あいう ai/ \n\n\n,http://www.yahoo.co.jp\n,https://www.yahoo.co.jp"
print("my_urls=",my_urls)
chngi_urls = re.sub(r'(https?://\S+|\.|!"|!\n+)',"<a href\"\\1\">\\1</a>", my_urls)
print("chngi_urls=",chngi_urls)
exit()
足りないところはよろしくお願いいたします。