我想解析分号分隔的字符串,最后有分号或没有分号
我有正则表达式(\s*\w+)(\s*;)*
,我将其解释为匹配:
0..n空格后跟1..n个字符,后跟0..n以分号结尾的空格。
我的问题是我得到错误的匹配"如果有'。在输入字符串中 例如:
0000.274283;518600.00-F10W;
而不是预期' 0000.274283;'我得到了0000'
我错过了什么?
答案 0 :(得分:0)
\ w匹配任何单词字符。因此,您匹配0-n空格,后跟1个或多个字母,数字或下划线。因为'。'不包括在内,您的正则表达式与字符串不匹配'。'在它,因此你只得到0000而不是0000.274283
答案 1 :(得分:0)
[^;]+
匹配除分号之外的所有内容,因此您可以使用此分号以分号分隔给定的字符串。