正则表达式中的浮点数和整型数可以写成-\d+.?\d,但是如何找到不适合的内容,并在Split等方法中将其用作分隔符。我知道这个表达式?!表示否定匹配,但是我不知道如何将它用于复杂的表达式。我试着将它用于各种组合,但没有结果。
unguejic1#
正如@Booboo在他的评论中提到的,在一个分割函数中,最好只匹配浮点数而不是非浮点数文本作为分隔符。通常,您会使用前向否定Assert进行拆分。像这样
(?:(?![-+]?(?:\d+(?:\.\d*)?|\.\d+)).)+
https://regex101.com/r/UHQRBO/1
(?: (?! [-+]? (?: \d+ (?: \. \d* )? | \. \d+ ) ) . )+
这没有考虑指数或其他因素。仅涵盖可选符号整型或浮点型。
1条答案
按热度按时间unguejic1#
正如@Booboo在他的评论中提到的,在一个分割函数中,最好只匹配浮点数而不是非浮点数文本作为分隔符。
通常,您会使用前向否定Assert进行拆分。
像这样
https://regex101.com/r/UHQRBO/1
这没有考虑指数或其他因素。
仅涵盖可选符号整型或浮点型。