簡體   English   中英

在python中使用正則表達式從一行提取字符串

[英]Using regex extract string from a line in python

我有這樣的句子

“ Hello world,您好[12312] 234 32423 234
23423 232 23423
2223 234 23234
223 2332 2323
我是一名程序員,如何[54321]
23 2 12 112
12 1212 121
這是一個程序,好的[123123] 12123
1232 12312 1231
323 123 23423
...這還在繼續”

我想得到所有的字符串,直到'['

我的輸出應該是
“你好,世界
我是一名程序員,如何
這是一個程序,好的“

如何使用正則表達式執行此操作?

您不需要為此使用正則表達式,只需使用split即可對'['進行拆分,然后獲取第一個返回的項目。

line1 = "Hello world, Hi[12312]"
line2 = "I am a programmer, How[54321]"

print(line1.split('[')[0])
print(line2.split('[')[0])

產生:

Hello world, Hi
I am a programmer, How

編輯

要遍歷所有行,僅打印具有“ [”的行:

string1 = '''Hello world, Hi[12312] 234 32423 234
23423 232 23423
2223 234 23234
223 2332 2323
I am a programmer, How[54321]
23 2 12 112
12 1212 121
This is a program, Okay[123123] 12123
1232 12312 1231
323 123 23423'''

lines = string1.split('\n')

for line in lines:
    if '[' in line:
        print(line.split('[')[0])

產品:

Hello world, Hi
I am a programmer, How
This is a program, Okay

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM