Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中使用正则表达式从一行中提取字符串_Python_Regex - Fatal编程技术网

在python中使用正则表达式从一行中提取字符串

在python中使用正则表达式从一行中提取字符串,python,regex,Python,Regex,我有这样的句子 “你好,世界,你好[12312] 234 32423 234 23423223423 2223234 23234 2232332233 我是一名程序员,如何[54321] 23212112 1212121 这是一个程序,好的[123123]12123 1232 12312 1231 32312323423 ……这种情况还在继续。” 我想得到所有的字符串,直到'[' 我的输出应该是 “你好,世界,你好 我是一名程序员,如何 这是一个程序,好吗?”` 如何使用正则表达式执行此操作?您

我有这样的句子

“你好,世界,你好[12312] 234 32423 234
23423223423
2223234 23234
2232332233
我是一名程序员,如何[54321]
23212112
1212121
这是一个程序,好的[123123]12123
1232 12312 1231
32312323423
……这种情况还在继续。”

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

我的输出应该是
“你好,世界,你好
我是一名程序员,如何
这是一个程序,好吗?”`


如何使用正则表达式执行此操作?

您不需要为此使用正则表达式,只需使用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

到目前为止,您尝试了什么?这不是一个编码为服务平台。看起来您实际上是在尝试将字符串设置为
[
,而不是
。拆分(“[”)[0]
我刚刚在我的帖子中添加了一个可以处理编辑问题的编辑。