您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python re.split()可以按空格,逗号和句点进行拆分,但不适用于1000或1.50

python re.split()可以按空格,逗号和句点进行拆分,但不适用于1000或1.50

使用负前瞻和负后瞻:

> s = "one two 3.4 5,6 seven.eight nine,ten"
> parts = re.split('\s|(?<!\d)[,.](?!\d)', s)
['one', 'two', '3.4', '5,6', 'seven', 'eight', 'nine', 'ten']

换句话说,您总是按\s(空格)分隔,并且如果逗号和句点后面 数字(?!\d)或前面(?<!\d)数字,则仅按逗号和句点进行分隔。

:根据@verdesmarald注释,您可能需要使用以下内容

> s = "one two 3.4 5,6 seven.eight nine,ten,1.2,a,5"
> print re.split('\s|(?<!\d)[,.]|[,.](?!\d)', s)
['one', 'two', '3.4', '5,6', 'seven', 'eight', 'nine', 'ten', '1.2', 'a', '5']

这将拆分"1.2,a,5"["1.2", "a", "5"]

python 2022/1/1 18:43:15 有486人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶