python分割字符串中文_python - 分割一个唯一的字符串-Python - SO中文参考 - www.soinside.com...

有两种方法。两者都是超级混音,并且极度依赖于原始弦的极小波动。但是,您可以修改代码以提供更多的灵活性。

这两个选项都取决于符合这些特征的生产线...有问题的分组必须...以字母或斜杠开头,可能大写

[感兴趣的标题后跟冒号(“:”)] >>

仅获取冒号后的第一个单词。

方法1,正则表达式,这只能获取两个数据块。第二组是“其他所有内容”,因为我无法使搜索模式正确地重复:P

代码:import re

l = [ 'MC/MX/FF Number(s): None DUNS Number: -- ', 'Power Units: 1 Drivers: 1 ' ]

pattern = ''.join([

"(", # Start capturing group

"\s*[A-Z/]", # Any number of space, until and including only the first capital or forward slash

".+?\:", # any character (non-greedy) up to and including the colon

"\s*", # One or more spaces

"\w+\s*", # One or more alphanumeric chars i.e. [a-zA-Z0-9]

")", # End capturing group

"(.*)"

])

for s in l:

m = re.search(pattern, s)

print("----------------")

try:

print(m.group(1))

print(m.group(2))

print(m.group(3))

except Exception as e:

pass

输出:----------------

MC/MX/FF Number(s): None

DUNS Number: --

----------------

Power Units: 1

Drivers: 1

方法二,逐字解析字符串。此方法与regex具有相同的基本特征,但是可以执行两个以上的感兴趣的块。它的工作原理是...开始逐字解析每个字符串,并将其加载到newstring。

开始逐字解析每个字符串的单词,并将其加载到newstring中。

[当打到冒号时,标记一个标志。

将下一个循环中的第一个单词添加到newstring。您可以根据需要将其更改为1-2、1-3或1-n字。

将newstring添加到newlist,重新设置标志,并保持解析单词。

代码:s = 'MC/MX/FF Number(s): None DUNS Number: -- '

for s in l:

newlist = []

newstring = ""

colonflag = False

for w in s.split():

newstring += " " + w

if colonflag:

newlist.append(newstring)

newstring = ""

colonflag = False

if ":" in w:

colonflag = True

print(newlist)

输出:[' MC/MX/FF Number(s): None', ' DUNS Number: --']

[' Power Units: 1', ' Drivers: 1']

第三选项:使用Natural Language Processing和机器学习实际找出逻辑语句的位置;)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值