【发布时间】:2020-01-17 18:32:25
【问题描述】:
考虑以下示例:
Original Regex
A-B-C SCHOOL INSTITUTION --> ABC SCHOOL INSTITUTION
A B C SCHOOL INSTITUTION --> ABC SCHOOL INSTITUTION
目的是将单个字母用连字符或空格分隔时组合在一起。我使用了以下模式:
(?<!\w\w)(?:\s+|-)(?!\w\w)
但是,我有一个问题是不能对数字应用相同的规则,因为 \w 包含数字,所以问题就出现了。例如,以下内容是不允许的,应保持原样:
Original Regex Desired
A 5 M SCHOOL CORPORATION A5M SCHOOL CORPORATION A 5 M SCHOOL CORPORATION
谢谢
【问题讨论】:
-
把每一个
\w改成[a-zA-Z]是否有效? -
看起来您希望将
\b([a-zA-Z])[\s-]+(?=[a-zA-Z]\b)替换为\1(demo)。
标签: python regex regex-lookarounds