futui 发表于 2023-5-2 10:17:30

正则提取文字的问题,请大师帮忙,谢谢

data = '''通用设备70/195|祥鑫科技33/195通用设备;泰嘉股份107/195通用设备'''
如何提取后面接数字的文字
也就是要提取:通用设备,祥鑫科技,泰嘉股份

请大师帮忙,谢谢

陶远航 发表于 2023-5-2 10:18:32

您可以使用正则表达式来提取后面接数字的文字。具体操作如下:
import re

data = '''通用设备70/195|祥鑫科技33/195通用设备;泰嘉股份107/195通用设备'''

# 使用正则表达式提取后面接数字的文字
pattern = r'([^\d\W]+\w*)\d+/\d+'
result = re.findall(pattern, data)

# 输出提取结果
print(result)# ['通用设备', '祥鑫科技', '泰嘉股份']


解释一下上面的代码:

- 首先导入 re 模块,该模块提供了正则表达式的功能。
- 定义要匹配的字符串 data。
- 使用正则表达式模式 r'([^\d\W]+\w*)\d+/\d+',其中:
- [^\d\W]+ 表示匹配一个或多个非数字和非单词字符,也就是要提取的文字部分。
- \w* 表示匹配零个或多个单词字符,用于处理可能存在的英文单词后缀(如 Corp)。
- \d+/\d+ 表示匹配一个或多个数字、斜杠、一个或多个数字,也就是要过滤掉的部分。
- ( ) 表示捕获匹配的内容,这里用于捕获要提取的文字部分。
- 使用 re.findall() 函数,传入正则表达式模式和要匹配的字符串 data,该函数会返回所有匹配的字符串列表。
- 最后输出提取结果。

上面的代码会输出:['通用设备', '祥鑫科技', '泰嘉股份']。

isdkz 发表于 2023-5-2 10:18:44

可以使用Python的re库(正则表达式库)来进行提取。如下所示:

import re

data = "通用设备70/195|祥鑫科技33/195通用设备;泰嘉股份107/195通用设备"

result = re.findall(r'([\u4e00-\u9fa5]+)(?=\d)', data)

print(result)


这段代码将找到所有跟在一个中文字符串后面的数字,然后将其前面的中文字符串提取出来。输出结果为:

['通用设备', '祥鑫科技', '泰嘉股份']


解释一下正则表达式的部分:

·[\u4e00-\u9fa5]+ :匹配一个或多个中文字符。
·(?=\d) :使用正向预查,表示只匹配跟在一个数字后面的内容(不包括这个数字)。

陶远航 发表于 2023-5-2 10:19:17

isdkz 发表于 2023-5-2 10:18
可以使用Python的re库(正则表达式库)来进行提取。如下所示:




没我快(

isdkz 发表于 2023-5-2 10:20:01

陶远航 发表于 2023-5-2 10:19
没我快(

gpt4速度确实是慢了点{:10_277:}

陶远航 发表于 2023-5-2 10:21:58

isdkz 发表于 2023-5-2 10:20
gpt4速度确实是慢了点

GPT-4?!
官网吗?

isdkz 发表于 2023-5-2 10:24:28

陶远航 发表于 2023-5-2 10:21
GPT-4?!
官网吗?

对的,而且我的 gpt4 api 也通过了,我自己在本地也搭了一个,

gpt4目前的速度跟 gpt3.5 还是有点差距的,gpt3.5基本就是秒回,但是 gpt4 的结果比较准确{:10_256:},

你可以对比一下运行结果

陶远航 发表于 2023-5-2 10:25:15

isdkz 发表于 2023-5-2 10:24
对的,而且我的 gpt4 api 也通过了,我自己在本地也搭了一个,

gpt4目前的速度跟 gpt3.5 还是有点差 ...

嗯,确实

sfqxx 发表于 2023-5-2 12:39:09

isdkz 发表于 2023-5-2 10:24
对的,而且我的 gpt4 api 也通过了,我自己在本地也搭了一个,

gpt4目前的速度跟 gpt3.5 还是有点差 ...

gpt5有吗?
ai.com是官网?

isdkz 发表于 2023-5-2 12:42:19

sfqxx 发表于 2023-5-2 12:39
gpt5有吗?
ai.com是官网?

ai.com就是官网呀,得fq

gpt5还早着呢

sfqxx 发表于 2023-5-2 13:56:32

isdkz 发表于 2023-5-2 12:42
ai.com就是官网呀,得fq

gpt5还早着呢

原来如此{:10_303:}
页: [1]
查看完整版本: 正则提取文字的问题,请大师帮忙,谢谢