PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Python
[问题] 利用 regex 来不包含某些 pattern
楼主:
NaiveRed
(天真红)
2017-05-18 15:21:11
标题有点不知道怎下...
(使用 python3 )
我想要把字串中,英文和数字“以外”的字都取代掉,
但同时又要保留某些含有英或数字“以外”的 pattern。
大概像这样: (保留 "+1" 和 "8+9")
s = "123天0气0真0好+1 ab++cd8+9abcd"
new_s = re.sub("....","_",s)
# new_s = "123_0_0_0_+1_ab_cd8+9abcd"
排除英数以外的应该没有什么问题: re.sub("[^a-zA-Z0-9]+","_",s)
但没办法保留有英数字的pattern,查了一下似乎可以使用 (?!...)
(?!\+1|8\+9) 但仍旧没有成功QQ
想问一下要怎么改才对?
作者:
uranusjr
(â†é€™äººæ˜¯è¶…級笨蛋)
2017-05-18 16:42:00
这个单纯用 re 会太麻烦, 而且我猜你真正的需求不太一样可以这样做
http://d.pr/1tENW
作者:
zerof
(猫橘毛发呆雕像)
2017-05-18 16:57:00
([^\d+|\W+|a-z]+| +)
https://regex101.com/r/HoKPUk/1/
+ 没有抓到, 另外加 |\+[^0-9] 应该就可以了btw, 如果要 escape \t\r\n 之类的话把 | + 改成 |\s+
继续阅读
Re: [问题] 对python有帮助的其他课程?
Duofilm
Re: [问题] 对python有帮助的其他课程?
Neisseria
[问题] 对python有帮助的其他课程?
Herodote
[问题] 中文编码
royt
Re: [问题] +=问题
zerof
[问题] 有关延迟执行程式
eraypeng
[问题] 整合开发环境之选择
KILLE
[问题] DataFrame资料筛选问题
ruisme
[问题] if含式一次比较一个阵列的内容
qqq04737084
[问题] 图像辨识
aa12twtwaa
Links
booklink
Contact Us: admin [ a t ] ucptt.com