[英]Using Regex to catch text until first occurrence of new line
考虑我有以下文字:
== Sejarah == \n Berkas:Gunung Kawi Rice Terrace Tampaksiring 1.jpg|kiri|jmpl|200px|Sawah di sekitar Candi Tebing Gunung Kawi, Tampaksiring, Bali. \n \n \n \n Jepang menduduki Bali selama Perang Dunia II dan saat itu seorang perwira militer bernama I Gusti Ngurah Rai membentuk pasukan Bali 'pejuang kemerdekaan'. Berkas:Bali Labeled.png|jmpl|225px|Peta topografi Pulau Bali \n \n === Daftar kabupaten dan kota di Bali ==
我想替换来自 Berkas: 的所有数据,直到第一次出现 \\n 这意味着:
Berkas:Gunung Kawi Rice Terrace Tampaksiring 1.jpg|kiri|jmpl|200px|Sawah di sekitar Candi Tebing Gunung Kawi, Tampaksiring, Bali. \n
Berkas:Bali Labeled.png|jmpl|225px|Peta topografi Pulau Bali \n
我尝试使用正则表达式df['Body'] = df['Body'].str.replace('Berkas:[\\s\\S]*?\\n','',regex=True)
没有成功我怎么知道\\n 应该是第一个找到的正则表达式? 我究竟做错了什么?!
import re
text = "== Sejarah == \n Berkas:Gunung Kawi Rice Terrace Tampaksiring 1.jpg|kiri|jmpl|200px|Sawah di sekitar Candi Tebing Gunung Kawi, Tampaksiring, Bali. \n \n \n \n Jepang menduduki Bali selama Perang Dunia II dan saat itu seorang perwira militer bernama I Gusti Ngurah Rai membentuk pasukan Bali 'pejuang kemerdekaan'. Berkas:Bali Labeled.png|jmpl|225px|Peta topografi Pulau Bali \n \n === Daftar kabupaten dan kota di Bali == "
pattern = "Berkas.*\n"
## list of data from Berkas
Berkas_list = re.findall(pattern, text)
for data in Berkas_list:
print(data)
输出:
Berkas:Gunung Kawi Rice Terrace Tampaksiring 1.jpg|kiri|jmpl|200px|Sawah di sekitar Candi Tebing Gunung Kawi, Tampaksiring, Bali.
Berkas:Bali Labeled.png|jmpl|225px|Peta topografi Pulau Bali
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.