正则表达式从组中排除字符
Regex exclude character from the group
我正在尝试编写此正则表达式以使用一些规则匹配点
(\.+ *|([a-zA-ZÀ-ž]\.\d))(?=[^\d{1}(\.\d{1})])(?=[^.,])
但是我的正则表达式也匹配点前后的几个字符
例如:
č.1 > 匹配 č.1(不正确,匹配应该只有 .)
St.M > 匹配。 (正确)
2.0 > 不匹配(正确)
您知道如何从结果中“排除”这些其他字符并仅匹配点吗?
感谢您的帮助
您可以使用正后视 (?<=)
断言字符 class 和左侧的特定范围来缩短模式。
(?<=[a-zA-ZÀ-ž])\.
根据评论,具有正前瞻性的模式
(?<=[a-zA-ZÀ-ž])\.+ *(?=[^.,])
我正在尝试编写此正则表达式以使用一些规则匹配点
(\.+ *|([a-zA-ZÀ-ž]\.\d))(?=[^\d{1}(\.\d{1})])(?=[^.,])
但是我的正则表达式也匹配点前后的几个字符
例如:
č.1 > 匹配 č.1(不正确,匹配应该只有 .)
St.M > 匹配。 (正确)
2.0 > 不匹配(正确)
您知道如何从结果中“排除”这些其他字符并仅匹配点吗?
感谢您的帮助
您可以使用正后视 (?<=)
断言字符 class 和左侧的特定范围来缩短模式。
(?<=[a-zA-ZÀ-ž])\.
根据评论,具有正前瞻性的模式
(?<=[a-zA-ZÀ-ž])\.+ *(?=[^.,])